How Factory works
Seven gates between a request and an honest terminal state.
Factory does not replace the coding agent or choose product strategy. It changes the delivery contract around the work: what must be known, what must be proven, and which claim the evidence permits.
Phase 1
Intake
Factory accepts a Linear issue, Sentry event, or written request. It separates reported symptoms from evidence and turns intentions into observable acceptance criteria.
Phase 2
Isolate
The default environment is a separate Git worktree on its own branch. Factory never grants itself permission to fall back into the active checkout.
Phase 3
Diagnose
Factory reproduces the problem, records what it inspected, and stops after two identical failed attempts instead of retrying indefinitely.
Phase 4
Plan
Facts are investigated. Decisions are put to the user. Code does not begin while a blocking question remains unanswered.
Phase 5
Build
Each milestone begins with an end-to-end or integration test that fails for the intended reason. Implementation follows only after that observation.
Phase 6
Prove
Factory reruns named tests, scans full changed files, expands to callers and contracts, and asks an adversarial reviewer for concrete failure orderings.
Phase 7
Stop
An executable gate checks the acceptance matrix, open questions, isolation, consent, receipts, budgets, gaps, and terminal-state agreement.
One contract / two hosts
Claude Code invokes /factory. Codex invokes $factory.
Both hosts read the same provider-neutral skill, phase files, role configuration, state, and executable gates. Switching providers does not change what delivered means.