# Deterministic phase runner implementation Implemented `bin/task-phase-run`. ## Added - `bin/task-phase-run` ## Updated - `docs/task-phase-machine.md` - `tsconfig.json` ## Behavior - reads `STATE.md` - refuses terminal phases - validates required state fields - builds a phase-specific prompt - runs one bounded Pi pass - requires `STATE.md` to be updated - rejects unchanged phase - rejects illegal transitions - enforces post-phase gates - writes run artifacts under `artifacts/phase-runs//` ## Enforced examples - `shape -> implement` requires done gate / exclusions / reality constraints / validation plan - `implement -> verify` requires `Candidate done: yes` - `verify -> review` requires `Validator status: pass` and evidence fields - `review -> done` requires candidate done + validator pass, and revalidation pass if repair happened - `repair -> verify` requires `Repair applied: yes` ## Validation - `bun run typecheck` passes ## Note This is a one-pass deterministic runner, not a full loop controller yet. It is the enforcement core for the later multi-pass wrapper.