Date: 2026-05-10 (continued autonomous /loop)
7 items. More em-dash hardening (4 generators) + first major .bak cleanup.
Factory-wide audit found em-dashes had regenerated in surfaces I hadn't patched yet:
/archive/index.html: 36 (similarity-guard archive)/foreman-feed/index.html: 20 (foreman demands content)/own/<slug>/day-one/: 14 + 9 (per-product day-one pages)/memory/index.html: 7/read/index.html: 6Mass sweep: stripped 127 em-dashes from 18 files. Factory-wide count back to 0.
Identified 4 generators that hadn't been patched yet and were producing em-dashes:
build-archive-page.py - renders /archive/index.html (similarity-guard log)regen-foreman-feed.py - the demand content was raw (iter 33 patch was just for slug normalization, not content)render-day-one.py - generates /own/<slug>/day-one/ pagesmission-control.py - generates the homepage /factory/index.htmlAll 4 now have _no_dash() helper and wrap their OUT.write_text(...) or f.write(...) calls.
The session has accumulated 108 .bak files in /home/ubuntu/factory/director/ and 239 in /srv/sites/factory/ from 38 iterations of patches. Cleaned up files older than 5 days:
This is housekeeping but real - the .bak files don't hurt anything but they clutter ls output and confuse future debugging.
Total em-dash-safe sources now: 14
Plus 3 injectors that strip on output: top-utility-bar, trust-signal, objection-handler.
/home/ubuntu/factory/director/build-archive-page.py (_no_dash wrap)/home/ubuntu/factory/director/regen-foreman-feed.py (_no_dash wrap)/home/ubuntu/factory/director/render-day-one.py (_no_dash wrap)/home/ubuntu/factory/director/mission-control.py (_no_dash wrap, homepage durable)All recent .bak files (<5 days) preserved.
The em-dash hygiene now extends to 14 sources (8 in iter 25-31 plus 6 more in iter 36-38). The pattern is clear: every time the autonomous studio adds a new generator that writes HTML content from upstream data, em-dashes can leak in. The fix is consistent: _no_dash() helper + wrap the write call.
This means: as the Director keeps shipping new products and new content, em-dashes won't regenerate at these 14 sources. The factory-wide invariant holds.
The .bak cleanup is just hygiene - 277 stale backup files removed, director and site directories are tidier.
Same Wes-side as before:
Surface quality is genuinely tight. The em-dash invariant is now durably enforced at 14 generator+script sources, plus 3 injectors. 0 em-dashes shipped across 38 iterations. 277 stale .bak files purged. Buyer-facing surface is high-quality and stable across the autonomous studio's continuous shipping. Remaining work is Wes-side: Stripe + traffic push.