On October 20, 2026, 99 pull requests merged into the ARCS monorepo (GitHub merge dates, UTC). One person directed the work: a parent Claude Code session planning, child sessions building in isolated worktrees, counter-agents checking. Every merge was pinned to the exact commit that passed its checks, and every one needed a human yes. The live counts are on status.arcs.care.
What shipped
A queryable map of the work itself. The JTBD graph: every tool, job, blocker and dependency in the repo, generated, with stable ids. Sprints three to five landed in one day: gates that fail the build on six rule classes, a jtbd(job) lookup, and outcome-weighted edges with a weekly drift report. Sprint six followed the same night, adding the MCP tools (Supabase, Vercel, Gmail and others) as graph nodes.
A retrieval test written before the result. The lookup was judged against the old flat tool catalog on a blind pool sealed by a separate session. Graph 16 of 18, catalog 6 of 18; essential recall 0.89 against 0.16. The scoring rule was fixed before anyone saw an answer.
A merge path that refuses. safe_merge merges only when the head matches the commit a person approved and every check reads SUCCESS. It refused twice that day on a moved branch, as designed.
A ledger that cannot be quietly rewritten. The decision-receipt table in Postgres became append-only: a trigger refuses UPDATE and DELETE, so a correction is a new row that names the old one. Receipts now carry the job they served and the tool that did it.
A bridge from decisions to outcomes. Real decision receipts now flow into the weekly accountant as their own cohort, so outcomes are scored on the decisions that were actually made.
What broke, kept on the record
Two own-errors, both in the merge path, both written into their receipts instead of patched over. One parent merge landed before a child session had pushed its final commit, and needed a repair PR. One merge went through while a check was still pending. The second is why safe_merge now waits for every check and refuses on anything short of SUCCESS. The fix shipped the same day as the failure.
Why it compounds
Ninety-nine merges is not the point. The point is that each one makes the next one cheaper and safer, while the human keeps the decisions. The harness sequences and checks the work; it never decides. That is NOTOMATION: scaffold the cognition, never replace the judgment.
- Reuse before rebuild. Agents ask the graph for an existing tool before building one, so fewer duplicates get built and fewer need review.
- Every merge leaves a labelled receipt. Job and tool ids on each receipt feed outcome weights back into the graph, so the tools that worked rank higher next time.
- Machines refuse the mechanical failures. A moved head, a pending check, a whole bug class: the gates catch these, so human review goes to judgment calls, not checklists.
- The record stays honest. An append-only ledger means the history the weights learn from cannot be edited after the fact.
What compounds is not the code. It is a person's judgment, spent only where it is needed.
What it would have cost without a harness
An estimate, not a measurement. PRs were sized by lines changed and kind, then priced at what a solo senior engineer would spend on scoping, building, testing, review, merge and receipt.
| Size | PRs | Hours each | Hours |
|---|---|---|---|
| Small: backlog rows, restamps, wording | 55 | 0.5–1 | 28–55 |
| Medium: fixes, gates, refactors | 31 | 2–4 | 62–124 |
| Large: graph sprints, blind test, merge path | 13 | 6–12 | 78–156 |
| Total | 99 | 168–335 |
That is about 4 to 8 person-weeks of unassisted work, landed in one calendar day of one person's attention: roughly 20 to 40 times the pace. Lines changed overstate the effort, because much of the diff is generated (catalogs, graph data, baselines), so the sizing leans on kind of work, not line count.
What this does not show
The loop has turned once. Compounding is by design, with the first measurement due: receipt coverage is checked on November 3, and the blind retrieval test is re-judged on November 17. Until then, this page claims a working mechanism and a fast day, not a proven curve. The human-time figure is a priced estimate from one engineer's judgment, not a timed comparison.