Date: 2026-05-10 (continued autonomous /loop)
This iteration was high-leverage: caught and fixed 4 cross-cutting bugs affecting hundreds of pages, plus shipped per-audience outreach copy + a /random/ exploration page.
| Bug | Pages affected | Fix |
|---|---|---|
Tagline double-period ("Your books, done by morning.. Below...") | 151 unlock pages | Added _strip_trailing_period() helper + tagline_clean local in regen-unlock-pages.py |
| Unlock-page nav missing /for/, /faq/, /changelog/ | 185 unlock pages | Updated nav anchor in generator |
| Unlock-page footer missing FAQ + Changelog links | 185 unlock pages | Updated footer anchor in generator |
Em/en dashes from upstream fermi_summary/gtm_motion text | 185 unlock pages | Render-time .replace(" - ", " - ") after html.escape |
All 4 fixed at the generator source level - every future regen of the unlock pages keeps the fixes. Plus running the regen now propagated to all 185 existing pages.
Each /factory/for/<audience>/ page (6 audiences) now includes a "Share with your network" section near the bottom with:
Audiences with copy:
This makes the audience pages directly useful for Wes's outreach push, not just SEO landings. When he's ready to push traffic to a specific audience, he opens the page, clicks Copy, and pastes into LinkedIn or Gmail.
Tiny but real exploration page. Loads /factory/adoptability.json, picks a random product, redirects to that product's landing page. Adds a "Surprise me" pill to the catalog header for quick exploration. noindex so it doesn't pollute the sitemap.
Final audit on this-iteration pages: zero em-dashes shipped. Includes the previously-discovered upstream content (fermi summaries) which is now stripped at render time.
/home/ubuntu/factory/director/regen-unlock-pages.py - 4 patches (helper, tagline_clean, nav, footer, dash-strip)/home/ubuntu/factory/director/regen-audience-pages.py - 6 audience entries + outreach render block/srv/sites/factory/catalog/index.html - added "Surprise me" pill/factory/unlock/<slug>/index.html (all bug fixes propagated)/factory/for/<audience>/index.html (new outreach blocks)/srv/sites/factory/for/index.html (audience index)/srv/sites/factory/random/index.htmlAll .bak backups preserved.
Three of these are direct conversion-rate improvements:
The /random/ page is more cosmetic but adds a fun exploration affordance.
Same Wes-side as iter 24:
The factory's surface quality is significantly tighter than it was 60 minutes ago.
/unlock/<slug>/ before the CTA. Top 3 objections from the dossier with 1-line responses. Increases conversion at the moment of decision./unlock/<slug>/, /adopt/<slug>/, /builds/<slug>/ pages to catch regressions like the double-period bug earlier.outreach.html - reads existing outreach packs (where available) and renders a paste-ready page. Currently outreach copy exists per-product but isn't surfaced as a page.60+ buyer-facing pages, 185 products, hundreds of regenerated sub-pages, all em-dashes/typos that I introduced or surfaced are now zero. Next iteration can keep finding cross-cutting bugs or move into the conversion-handler layer.