7 August 2026GEN 3decision
0117 Executable, 58 Declared, One Rule Retired
Nothing the engine produces needs a gate before publishing. The live site already names its engines in a footer colophon. So STR-031 came out whole: the rule, the loader, the CLI flag, the validator exception, the checklist row. The ID was retired as DECLARED N/A rather than deleted, so the coverage gate stays truthful. Validator v1.3.0 reports 17 executable and 58 declared rules. Suite back to 28 of 28.
Retire a removed rule ID as declared N/A so the coverage count stays honest.
Create-Articles
7 August 2026GEN 3feature
0213 Regressions for a Gate That Defines No Fields
STR-031 blocks any article dated 7 August 2026 or later that lacks a top-level aiDisclosure block. The engine defines none of those fields. It reads spec_version, surface_class, mode and label from the control-plane disclosure spec at check time. Malformed dates and unresolvable specs fail closed. Artifacts dated earlier validate unchanged, since the back catalogue is a later decision. Validator v1.2.0 shipped with 13 new regressions.
Consume the shared spec at check time rather than restating its fields in the checker.
Create-Articles
25 July 2026GEN 3fix
0375 to 300 Words per Citation Leaf
CQ-007 needed a clear boundary for articles that nest H3 headings under an H2. The corrected rule measures the leaf. Each leaf carries 75 to 300 visible editorial words, and H2 bridge prose attaches to the first H3 below it. Headings and code do not count. Unsupported nodes now fail closed in the flagship builders. Regressions cover boundaries, nesting, tables, empty leaves and required fields.
Define the unit a rule measures before setting its threshold.
Create-Articles
25 July 2026GEN 3feature
04One Inline URL, One Registered Source
STR-030 is opt-in and blocking. Every inline URL maps to exactly one registered source, with no spares on either side. Each source binds to a unique section. Records must be canonical HTTPS, and provenance is judged relative to the claim, independent of the legacy credibility tier. Regressions fail closed on both Lexical URL shapes, known aggregators and empty inventories. The 2026 framework article migrated to direct-only-v1.
Bind each source to the claim it supports, one URL to one record.
Create-Articles
14 June 2026GEN 3fix
0520 Stacked Contrasts That Passed Every Word Check
A framework draft cleared every banned-word check and still read like a machine. It stacked over 20 contrast constructions on one metronomic rhythm. PAT-021 through PAT-026 went into voice.md v7.0.12: cadence stacking, sentence-length variance, copula avoidance, trailing -ing, puffery, specificity anchors. The reusable gate is 01-RULES/anti-slop.md, wired into validation.md. A do-not-over-strip rule keeps it from flattening honest prose.
Word-level checks miss rhythm. Read the draft aloud before calling it clean.
Create-Articles
5 to 6 April 2026 · v8.0.1GEN 3release
06Headless Native: Legacy CMS to Headless CMS JSON
Major version upgrade. Output changed from legacy CMS HTML fragments to headless CMS JSON payloads with rich text AST. Engine now publishes via SDK. Deleted 4 legacy output files. Created 3 new reference files for the headless contract. Validation rewritten from HTML grep to JSON/AST traversal. Templates updated for rich text output. Reference files replaced with .json golden examples. All v7.9.x content quality rules (voice, structure, semantic, AI-SEO) preserved — only the output format changed. Workflow split into slim orchestrator (~1,200 tokens) + 8 phase files to fix the AI agent's 10K token read limit that truncated everything past Phase 2 during agentic runs.
Changing the output format tests whether your validation rules are coupled to structure or to quality. Ours survived because they check content, not markup.
Create-Articles
8 to 10 March 2026 · v7.9.36GEN 3fix
07PAT-019: Experience-Counting Pattern
New Tier 3 flag-for-review check. Detects LLMs counting personal experiences to manufacture authority ('five times,' 'after the third collapse'). Q18 added to QUICK-CHECK. voice.md bumped to v7.0.9. Triggered by model-agnostic article generated under v7.9.35 containing 'five times' / 'five collapses' in 6+ locations. The examples established the pattern without counting. Exception: counting artifacts/data ('80+ versions') is legitimate.
LLMs quantify experience to signal authority. The count itself is the tell — real operators describe what happened, not how many times.
Create-Articles
23 February to 2 March 2026 · v7.9.33 to v7.9.35GEN 3architecture
08Domain Frequency + Voice Sync + Rule Health Check
Three versions closing gaps found during production compiles. STR-023 Domain Frequency (v7.9.33): BLOCKING structural check — no external domain appears more than twice per article. Triggered by a single domain appearing 4x. v7.9.34 Voice-Validation Sync: PAT-014 Check 7 (inversion variant) added, Q17 PAT-018 anchor bug fix (was silent no-op on HTML), voice shape list expanded. Triggered by edit pass catching 4 voice failures that passed structural validation. v7.9.35 Rule Health Check: cross-engine documentation sync. STR-012 marked superseded by STR-023. Q3 grep aligned to max-2-per-domain. Image-handoff inline SVG section removed (contradicted STR-022). Cheatsheet synced.
Production compiles are the real test suite for upstream engines. Every compile run reveals gaps the generator missed.
Create-Articles
28 February 2026GEN 3learning
09A 9-Step Table That Overstated the Pain
Section 1 of the agent-addressable-content article opened with a 9-step table. The table overstated what a single article actually costs to produce. It came out. In went a library-evolution table with five cross-article scenarios, plus the argument for the automation path. Two earlier passes on the same piece fixed a PAT-014 violation and cut filler. The schema wordCount was wrong too.
Do not exaggerate the pain your tool solves. The honest number is more persuasive.
Create-Articles
22 February 2026 · v7.9.32GEN 3fix
10PAT-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
11Absorption 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
12Compiler 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
13Spec 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
14Messaging 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
15Date 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
12 February 2026GEN 3feature
16Both Dates Moved Under the Title
Version 7.9.21 put both dates where the reader looks first. Published and updated now sit in.post-meta, directly under the title. The footer carries neither. The schema contract was updated to match, so JSON-LD and the visible meta read the same values. Template timestamps were normalised to YYYY-MM-DD.
The structured data and the visible page should read from one source.
Create-Articles
11 February 2026 · v7.9.20GEN 3architecture
17Source 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
18Tier-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
19Sitemap 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
20Opposite-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
21Published 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
22Contrast 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
23Workflow 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 2026GEN 3decision
24The Limitations Box Came Out
Version 7.9.6 removed the limitations box. Caveats had been collected into a single block, separate from the claims they qualify. They are now written into the paragraphs that make those claims. The information is the same. A reader has to pass through it to finish the sentence.
Write the caveat into the sentence it qualifies. A box is easy to skip.
Create-Articles
5 February 2026 · v7.9.7 to v7.9.13GEN 3release
25Seven 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
4 February 2026 · AI-SEO v7.1.1GEN 2architecture
26Context 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
3 February 2026GEN 3learning
27A Visual Decision Tree From Production Runs
Running real articles through the engine surfaced friction that the spec never showed. The fixes were usability changes. The durable artifact is a Visual Decision Tree. It draws the decision points in the article build. It came out of production runs rather than from planning on paper.
Production runs find the usability gaps that a written workflow hides.
Create-Articles
1 February 2026GEN 3release
28Gen 3 Stable, With Retrofit Mode for the Back Catalogue
Gen 3 reached its first stable release on 1 February 2026, after the split into separate engines. Splitting the monolith left a back catalogue written under the old rules. Retrofit mode handles those. It brings an existing article up to the current structure without a full rewrite.
A stable release needs a path for the work produced before it.
Create-Articles
1 February 2026GEN 3architecture
29One File Holds Every viewBox Width
SVG templates had drifted apart on viewBox width. They now take that width from a single file, svg-template-lab.html, and match each other. Templates F through N joined the set. Diagrams inside one article now line up at the same measure. A width change starts in the lab file.
Pick one file to hold the geometry and sync the rest to it.
Create-Articles
1 February 2026 · v7.9.2GEN 3architecture
30The 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
31Visual 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
31 January 2026GEN 3fix
32Five Stable Templates After One Baseline Fix
Text inside the SVG diagram templates would not centre vertically against its shape. The attribute that fixed it is dominant-baseline set to central. Arrows are placed manually. With those settled, five templates, A through E, reached a stable state. PAT-015 was defined in the same version.
A diagram system is only reusable once its text centres the same way every time.
Create-Articles
31 January 2026GEN 3learning
33Three Prompt Patterns That Repeated
Three prompt patterns, labelled A, B and C, were run repeatedly against Gemini. The question was whether each returns the same shape of output run after run. All three held. Stability was confirmed, and the three were recorded as the tested set for the engine. A pattern that has not been repeated is a guess.
Run a prompt until it repeats before you write it into the spec.
Create-Articles
31 January 2026GEN 3decision
34Hidden Image Markers Replaced With Visible Prompts
Image Insertion Points were markers only the pipeline could see. A human reading the draft had no idea what image was coming. Visible Image Prompts replaced them. The prompt text sits in the draft where the image goes, readable by whoever reviews it. The same version set the SVG-first rule: use a diagram before reaching for a generated image.
A handoff marker the reviewer cannot see is a handoff nobody can check.
Create-Articles
31 January 2026GEN 3feature
35STR-017 and STR-018: The First Image Handoff
Image Insertion Points are the markers that pass work from the article engine to the image engine. STR-017 and STR-018 govern them. This is the first version where the two engines share a written contract. The markers were invisible to a reader of the draft, which the following version fixed.
Give the handoff between two engines a rule ID before it grows conventions.
Create-Articles
31 January 2026GEN 3feature
36Nine Components, Four Voice Updates, One Registry
Components C01 through C09 reached completion. Voice updates V01 to V04 landed in the same pass. A component registry lists them all. Without it, a builder has to grep the templates to find what exists. The registry is the index, and the templates are the implementation.
Without a registry, the only index of your components is the source.
Create-Articles
30 January 2026GEN 3architecture
37One validation.md, Three Depths
Validation rules had been spread across several files in the engine. They now live in validation.md. Depth is a mode, selected as QUICK, STANDARD or FULL. A fast pass and a full audit read the same rule text, so they cannot disagree. Only the count of checks changes.
One rule file, with the depth of the pass as a mode.
Create-Articles
30 January 2026GEN 3feature
38PAT-013 and PAT-014 Become Auto-Fail
PAT-013 covers filler words. PAT-014 covers the contrast construction LLMs reach for, the line that states a thing by first stating its opposite. Both were made auto-fail gates on 30 January 2026. A draft carrying either stops. Later versions widened both patterns, and the auto-fail behaviour dates from here.
Some voice rules earn an auto-fail. Filler and manufactured contrast are two of them.
Create-Articles
30 January 2026GEN 3architecture
39CSS Out of the Article, Into the Theme
Article output carried its own styles. The CSS moved out to the CMS theme, so one edit reaches every published article. Schema went to v7.1 in the same version. It adds TechArticle, DefinedTerm and an AI Summary block. Those three types tell a machine reader what kind of document it has.
Presentation belongs in the theme so a style change never touches old output.
Create-Articles
30 January 2026GEN 3feature
40Six Link Rules and an Approved-URL Registry
Six rules, L01 through L06, govern links. They cover external link targets, duplicate detection and the direct sourcing of claims. approved-urls.md holds the registry. A URL outside that file does not get written into a draft. Duplicate detection catches the same source cited more than once.
Maintain an allowlist of URLs the engine may cite and check every draft.
Create-Articles
28 January 2026 · AI-SEO v7.1GEN 2architecture
41AI-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
42Voice 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
43Renamed 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
44TOC 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
45Schema 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
46Pre-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
47Schema 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
48Tables 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
49Rebuilt 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
50LLMs 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
51Gen 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
52Font 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
53Regression 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
54Header/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
55FAQ 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
56Mobile 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
57CMS 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
58GitHub 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
1 January 2026GEN 3architecture
59The Engine Writes as a Named Person
The engine writes as a named person, Hendry Soong. That persona drives what the draft claims and what it refuses to claim. Data collection was added so the persona has facts to work from. Rewrite mode came in the same version. Schema moved to an @graph structure, so the entities in one article link to each other.
Name the person the engine writes as. A house style has no opinions.
Create-Articles
1 January 2026GEN 3failure
605 of 9 Techniques Actually Implemented
The engine publishes advice on nine content techniques. An audit on 1 January 2026 checked whether its own output actually used them. Five did. The other four had been written up in the spec and never wired into the build. All nine are implemented now, and the gap only showed because someone checked.
Audit your own output against the advice you publish. Half of it was missing.
Create-Articles
30 December 2025 · v5.0GEN 1release
61Rolled 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
62The 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
63Restructured 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
64First 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
65Initial 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.3CTX · POSITIONrelease
66Engine 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.2CTX · UNDERSTANDrelease
67Engine 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.1CTX · DEFINErelease
68Engine 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