22 February 2026 · v7.9.32GEN 3fix
01PAT-018: The Ghost Rule
Article audit found 9 instances of dramatic thesis sentences (“The gap is architectural,” “The differentiator is system design”) in FAQ schema. The pattern existed in voice.md examples but had no validation rule, no grep pattern, no quick-check question. A ghost rule: the system taught the pattern through examples but never enforced it. PAT-018 defined with grep pattern and added to QUICK-CHECK as Q17 (Tier 3 advisory, flag not gate). Absorption Gate (Phase 1.3) now extracts PAT-014 + PAT-018 examples from voice.md to prove comprehension.
If your system files demonstrate a pattern, your validation must check for it. Undocumented patterns become invisible violations.
Create-Articles
22 February 2026 · v7.9.30 to v7.9.31GEN 3architecture
02Absorption Gate + SVG Boundary Check
Two gates added to prevent silent failures. The Absorption Gate (Phase 1.3, v7.9.30): preflight listed messaging.md as “loaded” but the agent never read its contents. Key context (pillars, persona hooks, proof points) was absent from the generated article. New gate requires extracting and outputting specific elements from both rules files and context files after loading. Proves comprehension, not just file existence. The SVG Boundary Check (STR-022, v7.9.31): 7 inline SVGs bypassed Create-Images entirely during Phase 3 generation. Off-brand colours, emoji icons, sub-minimum fonts reached output. STR-022 is now a BLOCKING gate: article output must contain 0 <svg> elements. All visuals as VIP blocks for downstream processing.
“Loaded” is not “read.” Gates must prove comprehension, not just access.
Create-Articles
22 February 2026 · v7.9.28 to v7.9.29GEN 3architecture
03Compiler Feedback + Profile-Aware Density
Create-Articles can now receive structured feedback from Create-Compiler. Phase 5 (Compiler Feedback) processes reverse manifests: Tier 0 entries add new STR/PAT validation rules, Tier 2 entries trigger Section-Patch Mode (regenerates a single H2 section without full pipeline re-run). Overflow guard: more than 3 entries triggers a STOP. Separately, Phase 2.7 density formulas are now profile-aware (v7.9.29): visual weight divisors match content profile (thought-leadership: 400, operator-log: 600). Previously all profiles used the same formula.
Downstream quality gates are only useful if they can talk back. Close the loop.
Create-Articles
20 February 2026 · AI-SEO v7.2GEN 3failure
04Spec Verification: 7 Hallucinated Claims Caught After Publication
The WebMCP article shipped with 7 hallucinated claims about a “Declarative API” with HTML attributes (toolname, tooldescription) that do not exist in the actual spec. The spec is purely JavaScript-based. Also had 3 unverifiable “postMessage” claims. No rule existed to prevent this class of error. Added Part 9 (Emerging Standards and Spec Verification) to AI-SEO rules: when writing about browser APIs or web standards, the official spec must be cited as Strong-tier. Blocks at Phase 2.3 if missing. Retroactive fix: Section 2 rewritten, 2 SVGs rebuilt, FAQ/schema/table/AI-summary all corrected.
When writing about specs, the spec is the source of truth. Not secondary coverage, not demos, not blog posts.
Create-Articles
20 February 2026 · v7.9.25 to v7.9.27GEN 3architecture
05Messaging Framework + Brand Alignment
Three coordinated changes. Messaging Framework (v7.9.26): messaging.md added as first-class context file. Centralises value proposition, 3 messaging pillars, persona-by-buyer-stage tables, proof points, and hooks by content type. SEM-007 Messaging Pillar Alignment added to validation. ISO 8601 Dates (v7.9.25): date format upgraded from YYYY-MM-DD to full ISO 8601 with time and timezone. Google requires time and timezone for Article and ProfilePage schema. Brand Entity Sync (v7.9.27): Pillar 1 renamed “System Design Over Tools” (was “Architecture Over Tools”). 32 targeted terminology changes across 15 files in 2 engines.
Centralise messaging. When pillars live in 4 files, they drift in 4 directions.
Create-Articles
12 to 13 February 2026 · v7.9.22 to v7.9.24GEN 3feature
06Date Architecture: From Em Dashes to Semantic HTML
Three versions refining how dates work in articles. Em Dash Generation Gate (v7.9.22): article retrofit produced 5 em dashes despite PAT-001 existing. Root cause: no generation-time prevention rule. Added a generation-time warning matching the opposite-line pattern approach. Also purged em dashes from system file prose (system files are training data). Date Placement Flip (v7.9.23): aligned engine output with live site pattern. “Last updated” before H1, “Published” in footer. Semantic Dates (v7.9.24): moved “Last updated” to after H1 (Google’s recommended byline position). Added <time datetime> tags on both dates. Triple-layer date consistency: JSON-LD + <time> attribute + visible text.
System files are training data. They must follow the same rules they enforce.
Create-Articles
11 February 2026 · v7.9.20GEN 3architecture
07Source Registry: Cross-Article Memory
Each article session started fresh with no memory of previous research. Same sources re-discovered, same failed searches repeated. Built shared/source-registry/registry.md (tracks every external link across articles) and queries.md (tracks search queries with success/failure). Phase 2.1 reads the registry before researching. Phase 4.0.1 appends new data after output. Append-only: future sessions inherit what worked and what didn’t.
Cross-session memory turns isolated agents into a learning system.
Create-Articles
11 February 2026 · v7.9.19GEN 3decision
08Tier-First Sources: Classify During Collection
SEO evolution article shipped with 25% Strong sources. The tier classification happened after collection (Phase 2.6), so the shortfall was discovered after prose was already written. Required 4 source swaps post-generation. Moved tier classification into collection (Phase 2.3). Strong <50% is now a STOP condition before any writing begins.
Classify quality during collection, not after. Left-shift the gate.
Create-Articles
11 February 2026 · v7.9.18GEN 3feature
09Sitemap Auto-Sync
approved-urls.md was manually synced (last: 5 Feb). New articles published after that date triggered false validation flags. Phase 1.0 now auto-syncs from live sitemaps before preflight. Sitemap is source of truth. The whitelist file is a cache, not a maintained document.
Automate from the source of truth. Manual sync processes decay.
Create-Articles
10 February 2026 · v7.9.17GEN 3architecture
10Opposite-Line Hard Stop: Generation-Time Prevention
Test article contained a long-form opposite-line pattern that slipped validation. Root cause: voice.md examples covered only short-form patterns, Q5 quick-check was out of sync with full PAT-014, and no generation-time self-check existed. Fix: expanded voice.md with long-form examples, added a self-check warning at Phase 3.2 so the agent checks during writing (not just validation), and promoted Q5 to a hard stop. Validation should confirm, not discover.
Generation-time self-checks prevent problems before validation catches them.
Create-Articles
10 February 2026 · v7.9.16GEN 3feature
11Published Date + Dual-Date Schema
Readers and LLMs need to distinguish “when was this first published” from “when was it last updated.” Added two-line footer with immutable published date. Schema contract: datePublished matches footer, dateModified matches .post-meta. First publication date never changes.
Create-Articles
9 February 2026 · v7.9.15GEN 3failure
12Contrast Pattern Gap
During production article build, two issues passed validation that should have been caught: an opposite-line pattern slipped through PAT-014, and a broken URL wasn’t caught because link liveness checks weren’t enforced as blocking. Expanded PAT-014 with two new checks, promoted STR-020 from advisory to blocking gate, and added curl-based link liveness to quick-check.
Production articles are the real test suite.
Create-Articles
8 February 2026 · v7.9.14GEN 3failure
13Workflow Enforcement: Agent Skipped Everything
Asked to write an article, the agent loaded voice.md and a template but bypassed the entire 7-phase workflow: no preflight checklist, no source verification, no validation, no image handoff. Root cause: CLAUDE.md routed to a directory (“Load create-articles/system-files/”) which the agent treated as a buffet, cherry-picking files instead of following the prescribed sequence. Fix: CLAUDE.md now names exact workflow files. Mandatory first output is the preflight checklist. Mandatory second output is the source verification table.
Route to files, not directories. Agents treat options as a buffet.
Create-Articles
5 February 2026 · v7.9.7 to v7.9.13GEN 3release
14Seven Versions in One Day: Content Profiles to CSS Dividers
Seven incremental versions in a single day, each addressing a specific issue found during production runs. Content profiles (v7.9.7) gave validation context by content type. Video embeds (v7.9.8) and visual source class (v7.9.9) were cross-engine changes requiring Create-Images coordination. Explore section redesign (v7.9.10–12) separated editorial emphasis from navigation. CSS dividers (v7.9.13) handled spacing entirely in WordPress CSS. Small, focused changes with immediate field testing.
Ship small, test in production, iterate same-day. Seven focused versions beat one ambitious release.
Create-Articles
1 February 2026 · v7.9.2GEN 3architecture
15The Engine Split: Context Window Survival
v7.9.1 loaded at 84,312 tokens. Context window compacted before the agent could finish writing. Separated into two engines: Create-Articles at 68,994 tokens (articles, validation, workflow) and Create-Images at 37,399 tokens (14 SVG templates, image validation, tool routing). 18% reduction. Each engine fits in its own context window. This decision, made 4 days before Anthropic shipped Agent Teams, maps directly to their architecture: each teammate gets its own context window, owns separate files, and integrates through defined contracts.
Context window is a finite resource. Separate what from how.
Create-Articles
1 February 2026 · v7.9.1GEN 3feature
16Visual Rhythm System
Articles were text walls with 1 to 2 visuals across 8+ sections. Built a visual weight system: SVG/VIP = 1.0, table/callout = 0.5, pro-tip = 0.25. Minimum formulas by profile (thought-leadership = prose / 400). Mandatory visual positions: after hero, after intro, before conclusion. Phase 2.5 “Visual Plan” added to workflow. 14 lab-tested SVG templates (A through N).
Rules without examples get ignored. Templates without rules sit unused. You need both.
Create-Articles
4 February 2026 · AI-SEO v7.1.1GEN 2architecture
17Context Engineering as Core Operator Skill
Updated Operator Function and Pile of Parts definitions to position context engineering as a core Operator skill. The Pile of Parts Problem is really context fragmentation: tools fail because they lack shared context (brand voice, ICP, business rules). Context engineering is the discipline that fixes it. Created new definition page with AI Summary block for LLM citation.
Context engineering is not prompt engineering. It’s designing the information layer all AI systems share.
Create-Articles
28 January 2026 · AI-SEO v7.1GEN 2architecture
18AI-SEO Schema Rebuild for LLM Authority
Feedback from Grok and Gemini revealed schema gaps for LLM citation optimization. Added TechArticle type, keywords array, proficiencyLevel, DefinedTerm schema for key concepts, AI Summary blocks (hidden structured data for RAG systems), semantic HTML wrappers (article/section tags), and dfn tags for citation-ready definitions. Schema is not just for Google. It’s for LLM training data.
Schema serves two masters now. Google for rich results, LLMs for citation authority.
Create-Articles
21 January 2026 · v7.0.3GEN 2fix
19Voice Drift from Skill File
Output tone inconsistent. Some articles sounded like me, others didn’t. Root cause: hendry-voice skill file was updated but voice.md in Create-Articles had older rules. Two sources of truth = drift. Aligned and added reference to skill as canonical source.
Single source of truth for voice. Reference, don’t duplicate.
Create-Articles
21 January 2026 · v7.0.3GEN 2decision
20Renamed Content System to Create-Articles
Framework alignment. The AI Marketing Framework has a CREATE engine. This system is a specific implementation. Renamed from “Content System” to “Create-Articles” across all files. Clearer mental model.
Naming should encode hierarchy.
Create-Articles
18 January 2026 · v7.0.2GEN 2failure
21TOC Missing Despite Rule Existing
Posts with 7 H2 sections generated without table of contents. TOC requirement existed in components.md but wasn’t enforced in validation. Tier 3 “advisory” meant LLM skipped it. Elevated to structural validation with auto-fail.
Advisory rules get skipped. Make requirements structural.
Create-Articles
18 January 2026 · v7.0.2GEN 2feature
22Schema Mentions Must Match Content
Schema had mentions (tools, companies) that weren’t in the article body. Orphaned schema entities. During research, noted tools to potentially mention, added to schema, but they didn’t make final draft. Solution: Every entity in schema mentions must appear in visible content.
Schema is a contract with search engines. Don’t promise what you don’t deliver.
Create-Articles
18 January 2026 · v7.0.2GEN 2feature
23Pre-Output Checklist
Articles passing validation but still having issues. Individual checks passed, cross-checks weren’t happening. TOC didn’t match H2 IDs. Solution: Pre-output checklist runs AFTER validation passes. Structural gates must pass (TOC present, schema wordCount, mentions match content). Quality gates flag for review.
Validation checks parts. Pre-output checks the whole. Both are necessary.
Create-Articles
18 January 2026 · v7.0.2GEN 2failure
24Schema Timing Bug
Schema wordCount validation failed on every run. Schema said 1650, actual content was 1366. Spent 4 hours debugging. Root cause: Schema populated from content brief (target: 1650) BEFORE content generated. Validating against a goal, not a measurement. Solution: Separate schema properties by timing. Static values during generate, measured values post-generate from actual output.
Measured values must come from output, not input. Never validate predictions against themselves.
Create-Articles
17 January 2026 · v7.0.1GEN 2fix
25Tables Hard to Scan
Feedback that tables looked flat, hard to read with many rows. Added zebra striping to design tokens. Centered footer alignment.
Visual rhythm aids scanning.
Create-Articles
13 January 2026 · v7.0GEN 2architecture
26Rebuilt Validation as 3-Tier System
Previous validation was binary. Some checks are deterministic, some require judgment. Treating them the same caused problems. Tried single pass with confidence scores (too complex), all advisory (too many false positives), all auto-fix (broke things needing judgment). Solution: Tier 1 (Pattern) = 100% reliable, auto-fix. Tier 2 (Structural) = 95% reliable, evidence-based. Tier 3 (Semantic) = 70 to 80% reliable, advisory only.
Match automation level to confidence level.
Create-Articles
13 January 2026 · v7.0GEN 2learning
27LLMs Lie About Validation
Asked Claude to validate the article had 10+ external links. Response: “PASS – Article contains sufficient external links.” Actual count: 4. The LLM pattern-matched the validation instruction to the expected output without doing the work. It generated a plausible validation result without checking.
Evidence-based validation defeats hallucination. Don’t ask “did this pass?” Ask “show me what you found.”
Create-Articles
11 January 2026 · v6.9.9.8GEN 1release
28Gen 1 Complete. Production Stable
Cumulative fixes from v6.9.9.3 through v6.9.9.7. CMS theme typography aligned. Footer format updated. FAQ spacing reduced. Body font mismatch fixed. First fully production-stable version. Gen 1 complete.
Create-Articles
11 January 2026 · v6.9.9.7GEN 1failure
29Font Mismatch
Mobile text looked “tight” compared to native CMS pages. CSS variable for body font was set to ‘Barlow Semi Condensed’ but CMS theme used regular ‘Barlow’. I had assumed the font from looking at headings. Audited against actual theme settings to fix.
Match the environment. Extract values from the destination system, don’t assume.
Create-Articles
10 January 2026 · v6.9.7GEN 1fix
30Regression Check
New version broke things that previously worked. Missing reference files. Added regression testing against previous stable version before release.
Test against the last known good state.
Create-Articles
7 January 2026 · v6.9.5GEN 1failure
31Header/Footer Drift
First generated post had correct header and footer. Second post drifted. Logo changed from “Hendry” to “Hendry.ai”. URL changed from “/builders-log/” to “/blog/”. Social icons switched from LinkedIn+Email to LinkedIn+Twitter. The LLM improvised on elements that should have been verbatim. Created a “Verbatim Elements” section with exact HTML that cannot be modified.
Agents improvise unless explicitly forbidden. Lock down what shouldn’t change.
Create-Articles
7 January 2026 · v6.9.4GEN 1decision
32FAQ Count Insufficient
Posts generating 3 to 5 FAQs. Need minimum 6 for schema richness. Added explicit minimum, updated validation checklist, added to common mistakes table.
Make requirements explicit and enforceable.
Create-Articles
6 January 2026 · v6.9GEN 1fix
33Mobile Padding Iteration
Generated pages had tighter spacing than existing website. Tested values iteratively: v6.8 at 3.2vw was too tight. v6.9 at max(5vw, 16px) was still tight. v6.9.2 at max(10vw, 40px) for 768px finally matched. Three attempts with screenshot comparisons.
Test against production. Screenshots don’t lie.
Create-Articles
6 January 2026 · v6.8GEN 1release
34CMS Fragment Mode
Generated complete HTML pages with DOCTYPE, html, head, body tags. CMS theme already provides page structure. Result: duplicate headers, duplicate navigation, style conflicts. Switched to fragment mode: remove page wrapper, wrap content in namespaced div, scope CSS to that div.
Design for integration, not standalone. Output format depends on destination.
Create-Articles
2 January 2026 · v6.5GEN 1release
35GitHub Versioning + Golden Reference Files
Set up version control. Created golden reference files for each format type. Also fixed CSS variable naming mismatch. Reference files used --color-primary but canonical CSS used --c-primary. Generated content was missing rust/orange underlines.
One source of truth. Name files so the canonical source is obvious.
Create-Articles
30 December 2025 · v5.0GEN 1release
36Rolled Back to Simplicity
v3.8 broke GPT compatibility. Rolled back to v2.2 structure. Added one thing: a completed HTML example showing exactly what good output looks like. GPT followed workflow correctly again. Stability restored.
Show don’t tell. When instructions fail, examples succeed.
Create-Articles
29 December 2025 · v3.8GEN 1failure
37The 89-Line Disaster
Added 89 lines of validation checklists with MANDATORY and CRITICAL warnings everywhere. Renamed folders. Added 8 separate validation sections. GPT stopped following the workflow entirely. Output quality dropped. Workflow grew from 205 to 294 lines. The LLM got confused by competing priorities.
One example beats 89 lines of instructions. LLMs pattern-match examples better than they parse rules.
Create-Articles
27 December 2025 · v3.0GEN 1release
38Restructured to Core/Create Architecture
Separated core (brand, design) from creation (templates, workflow). Attempting to add organization. This would break things.
Create-Articles
25 December 2025 · v2.0GEN 1release
39First Content Generation Workflow
Added content generation workflow with templates for different formats. First functional version that could produce output.
Create-Articles
25 December 2025 · v1.0GEN 1release
40Initial Folder Structure
Created basic folder structure with placeholders for brand files and templates. The skeleton that would hold Foundation outputs. Starting point for everything that followed.
Create-Articles
22 December 2025 · v0.3POSITIONrelease
41Engine Output: POSITION (Competitive Differentiation)
Created positioning.md with the “Pile of Parts” narrative and differentiation framework. Trigger: Early content drafts sounded like every other AI marketing take. Generic “AI is transforming marketing” noise. Fix: Documented the specific counter-position: most teams have tools without architecture. Framework-first thinking, not tool-first. This positioning now gates every piece of content. If it doesn’t reinforce the narrative, it doesn’t ship.
Positioning isn’t a tagline. It’s a filter that kills generic content before it’s written.
Create-Articles
20 December 2025 · v0.2UNDERSTANDrelease
42Engine Output: UNDERSTAND (ICP Development)
Created icp.md with Strategic Sarah persona and pain point mapping. Trigger: Content was too broad. Trying to speak to everyone from junior marketers to CEOs. Fix: Hard-coded the ICP: marketing leaders who control budget, understand the gap between AI promise and delivery, and are asking “how do I prove ROI?” Every content brief now requires ICP alignment check before generation starts.
Generic content comes from undefined audience. ICP precision forces content precision.
Create-Articles
18 December 2025 · v0.1DEFINErelease
43Engine Output: DEFINE (Voice & Brand)
Developed voice.md and brand.md. This is the DEFINE engine in action. Trigger: Test outputs sounded like generic AI-written content. Polished but empty. Fix: Extracted the “Practitioner, not Pundit” heuristics. Concrete rules: no hedge words, show the work, forward focus not retrospective. Voice rules now run as Tier 1 validation. Pattern-matchable, auto-fixable.
Voice isn’t vibe. It’s enforceable rules that kill generic output.
Create-Articles