Phase 5 — Self-bootstrap / bake
ADR-0009 §3.3 Phase 5. R1 empirically retired (ADR-0008 amendment 2026-07-09) — this phase is known mechanical translation now, not spike work.
Gate: round-trip the full three-actor bootstrap (cut-prep bake / post-cut 'main' reset / re-pin) against a scratch repo; tree-SHA equality on all cases.
Contracts / invariants: behavior-equivalence-first, not contract-first per ADR-0009 §3.1 nuance. Bake-byte-exactness property (§3.2 invariants list): bake(oracle_input).tree_sha == bash_bake(oracle_input).tree_sha for the fixture matrix.
Related existing tracker: #336 (immutable pinning through executed scripts) — rolls into this phase; port itself eliminates part of the attack surface (ADR-0008 amendment 'bonus finding'); what remains lands as first-class Go design.
Discipline (§5): locale-safe subprocess output (git plumbing); precondition-check-inside-method for the bake operation.
References: ADR-0009 §3.3 phase 5; ADR-0008 §6 R1 + amendment (2026-07-09); Phase-5 spike substrate-of-record at /srv/claude/engineer/phase5-bake-spike/.