The ANMS-spec-driven, canon-locked, handoff-wake factory ran clean on 06-29 — then a per-task GitHub apparatus broke it on 06-30. This design brings it back on Paperclip's own primitives, with zero external scaffolding and all git operations moved into Frodo's milestone release runbook.
The self-driving factory already existed and worked — agents coordinating through Paperclip handoffs + wake, gated by ANMS canon-locked Gherkin specs. It broke on 06-30 when a per-task GitHub apparatus (commit+push+PR per task → CI → bot-watcher → a jam I piled Mergify/merge-train onto) replaced the native model. The fix isn't new construction: activate the 7 Paperclip routines already built-but-paused, remove the Hermes bridge and every external script, and move all git operations into Frodo's release team where they fire once per milestone — never per task.
Reconciled against your own words and objective timestamps. The 181-task 06-29 batch was the ANMS decomposition getting things moving — not the failure. The failure was the 06-30 per-task GitHub machinery.
| Signal | 06-29 (working) | 06-30 (went for a toss) |
|---|---|---|
| Per-task bot-fix churn (.botfix-*) | 3 | 61 (20×) |
| bot-review-watcher | seeded | went live 02:01 |
| Mergify / merge-train / release-marshal | — | all today (mine) |
| Work state | 56+ done, flowing, speed | jammed; 29/30 PRs conflict-rotted |
Always-on (~9): Jessica + the department heads + one minimal keeper routine (Atlas) that only surfaces ready/stalled work and fires native recovery — it does not route; heads route. Everyone else wakes on assignment or @mention. Producer ≠ verifier is enforced by the map's default-verifier pairing + the runsafe gate.
Every external thing I built has a native Paperclip equivalent that already exists:
| Need | Native primitive (replaces…) |
|---|---|
| Keep work moving | routines + triggers — replaces the COO cron |
| Wake an agent | agent wake / heartbeat on assignment or @mention |
| Invoke / hand off between agents | issue comment + interaction:create + successfulRunHandoff |
| Head decomposes work | issue child:create + issue-tree |
| Recover stuck work | recovery-actions — replaces the watchdog |
| Founder gates | approval (public/legal/prod) |
CANON-INDEX is the locked stable top — a tiny canon set; the other ~356 docs are demoted to derived/historical and cannot override canon. Every lane inherits it as its spec-lock, so the factory "physically cannot build something other than your thing." Gherkin acceptance is the promotion gate — nothing self-promotes without passing its scenarios, verified by a separate agent. This is the layer that made 06-29 work; it stays.
The dev inner loop is internal: build → head/QA verify → handoff. No git at the task level; a branch/PR appears only where a lane needs it as verification evidence.
Lane-by-lane, matching the map's own order: content-curriculum (already live) → agentops → qa-release → product-platform → data-personalization. Prove each lane self-drives before the next. Preserve, don't restart — the in-review backlog is already cleared; rejected/never-built tasks re-enter the restored native flow. Each activation is a config apply with Paperclip receipts — reversible, nothing external created.
Also: stalled issues recovered by native recovery-actions (not a watchdog); an @mentioned agent wakes and picks up; zero .botfix churn; zero GitHub-minutes burn between milestones; Jessica surfaces a founder-readable state with no /srv paths.
Don't build — restore. Activate the ANMS-spec-driven native factory lane by lane, un-pause the 7 routines and re-point them off Hermes to native wake, put all git operations in Frodo's milestone runbook, and delete every external script. The design that worked on 06-29 is the destination; the only real change is removing the 06-30 machinery that never should have been there.