Architect Fast
You are the orchestrator for the light factory lane: /architect's loop
shape — spec, parallelizable issues, fresh isolated builders, one closing
PR — with the per-issue grading machinery removed. Reuse /architect's
machinery by pointer, never by duplication: skills/architect/dispatch.md
(## Model alias table, ## Builder block template, ## Preflight and postflight dispatch, ## Status display) and skills/architect/tracker.md
(## Config) govern models, dispatch, merges, status, and tracker modes,
except where a substitution below names a deviation.
Size ceiling: at most 3 builder issues and ~400 changed lines expected. If
the honest decomposition needs more, stop and recommend /architect — a
hard stop, human ruling, never silently absorbed.
Rules kept
Unchanged from /architect: the tracking issue is the coordination log;
builders are fresh, worktree-isolated, and never commit; the orchestrator
owns commits, merges, and closure; tier is set at decomposition, never
moved by a failure; the timed-ruling protocol times every human question
and no approval gate exists anywhere; execution-conflict checks are mandatory at PHASE 0;
no silent fallback — every precondition, blocker, and substitution is
recorded.
Relaxed by design
- No strategist subagents — no adversarial spec, decomposition, or final
review. The orchestrator writes the spec itself and
to-issues runs
straight off it.
- No frozen check files, no check-runner: issue-body acceptance criteria,
builder-run tests, and the closing builder review carry the weight.
- No watchdog script — a per-wave timed background sleep is the
stall-fallback wake.
- "Nobody grades their own work" (Hard Rules 3 and 4) is deliberately
relaxed: the closing review is one fresh builder subagent that both
reviews and fixes, with no check-runner over its work — the
orchestrator's merge through postflight and the closing PR are the later
eyes. Product docs land in integrate's docs pass, same as
/architect.
Procedure
Ground. Load codebase-design first and use its glossary exactly.
Read authority docs in /architect's order. Tracker preflight and the
backend canary are unchanged (skills/architect/tracker.md
## Preflight per mode). No ground script mid-run — its reconcile
assumes checkrun evidence this lane never produces; read the ≤3-issue
frontier from tracker state. skills/architect/status.ps1|.sh works
unchanged; the manifest sets lane: architect-fast so status renders the
light-lane graph.
Intake. No question batch; anything genuinely open becomes a timed
ruling (skills/architect/SKILL.md ## Timed-ruling protocol) recorded
as an assumption. No adversarial spec review. Write the spec with
to-spec on its exact template, one named substitution: ## Validation strategy names this lane's gates — builder-run tests plus the closing
builder review-and-fix — never the check-runner or closing review.
Create the tracking issue and manifest; cut the factory branch. Append
status breadcrumbs to docs/runs/<run>/status-events.jsonl with the same
JSONL contract as /architect, using fast-lane stages where they differ:
publish, issues, dispatch-head, timed-wake, and closing-test.
Decompose. to-issues cuts at most 3 tracer-bullet vertical-slice
issues with a file-disjoint frontier and producer interface contracts,
two named substitutions: an acceptance-criteria section replaces the
check path, and the change-skeleton is optional. Above the ceiling,
stop and recommend /architect.
Factory loop. Dispatch every ready issue as a fresh
worktree-isolated builder — same agent def, preloads, model resolution,
never-commit rule, PHASE-0 execution conflicts, raw-evidence reports
(skills/architect/dispatch.md ## Builder block template), one
substitution: the frozen-checks section becomes acceptance criteria
quoted from the issue body. At dispatch, record each job's
dispatch-head SHA on its issue — the job's ffcheck target and
postflight base (freeze_sha field, same semantics). Each wave arms
one timed background sleep as the stall-fallback wake; on a fallback
wake with jobs in flight, judge liveness from report growth directly.
On DONE, merge through postflight (skills/architect/dispatch.md
## Preflight and postflight dispatch). On BLOCKED, answer durably and
respawn fresh.
Closing test pass. After all issues merge, run the full test suite
over the merged factory branch and capture the raw output.
Builder review. Dispatch one fresh worktree-isolated builder with
the run diff scope, the test-pass output, and /architect's
calibration wording: "Flag only gaps that affect correctness, the
stated requirements, or documented project invariants -- cite file:line
evidence for every finding. Do not report stylistic preferences." It
reviews code correctness, cross-slice cohesion, and test stewardship;
records its findings as one fix issue (orchestrator-filed where the
sandbox has no tracker access); then fixes them in its worktree. The
orchestrator merges through postflight and closes the issue — builders
still never commit. This is the lane's only review; post the verdict
plus diffstat on the tracking issue.
Integrate. Dispatch one subagent running the integrate stage
skill (skills/integrate/SKILL.md) with the change-context digest; its
first step is the docs pass. Standing ruling: the builder-review
verdict is the recorded final-review substitute — integrate's "skipped
by a recorded ruling" arm — and its graded-RUN verification set is
empty by design; validator-suite verification still runs. The
orchestrator rules on the result and posts the digest.
Stage skills invoked explicitly: codebase-design, to-spec, to-issues,
integrate. frozen-checks, adversarial-review, and final-review are
intentionally not invoked in this lane.
Substitutions
| Reused contract |
Fast-lane substitution |
to-spec's validation-strategy naming |
Builder-run tests + the closing builder review-and-fix |
to-issues' per-issue check path |
Acceptance-criteria section in the issue body |
to-issues' mandatory change-skeleton |
Optional |
| Builder template's frozen-checks section |
Acceptance criteria quoted from the issue body |
Postflight's freeze_sha diff base |
The job's recorded dispatch-head SHA |
| Ground script's frontier line |
Read from tracker state; no ground script mid-run |
| Watchdog |
One per-wave timed background sleep |
| Final review |
One fresh builder review-and-fix subagent fed the test-pass output; fixes merge through postflight |
| Integrate's graded-RUN verification set |
Empty by design; validator-suite verification still runs |
Maintenance
Re-read against each new model generation; the size ceiling and Rules kept
are invariants, the rest is prunable. Re-run
docs/evals/trigger-prompts.md. No feature ships without evidence in
DESIGN.md.
1---2name: architect-fast3description: Use when the user asks to architect-fast a change, run the light factory lane, or factory-build a small goal — a few files, roughly one sitting, at most ~3 parallel issues — into a specced plan with parallel builders, one builder-performed closing review-and-fix, and a single PR. Same loop shape as /architect with the per-issue grading machinery removed; for larger, riskier, or many-issue work use /architect instead.4---56# Architect Fast78You are the orchestrator for the light factory lane: `/architect`'s loop9shape — spec, parallelizable issues, fresh isolated builders, one closing10PR — with the per-issue grading machinery removed. Reuse `/architect`'s11machinery by pointer, never by duplication: `skills/architect/dispatch.md`12(`## Model alias table`, `## Builder block template`, `## Preflight and13postflight dispatch`, `## Status display`) and `skills/architect/tracker.md`14(`## Config`) govern models, dispatch, merges, status, and tracker modes,15except where a substitution below names a deviation.1617Size ceiling: at most 3 builder issues and ~400 changed lines expected. If18the honest decomposition needs more, stop and recommend `/architect` — a19hard stop, human ruling, never silently absorbed.2021## Rules kept2223Unchanged from `/architect`: the tracking issue is the coordination log;24builders are fresh, worktree-isolated, and never commit; the orchestrator25owns commits, merges, and closure; tier is set at decomposition, never26moved by a failure; the timed-ruling protocol times every human question27and no approval gate exists anywhere; execution-conflict checks are mandatory at PHASE 0;28no silent fallback — every precondition, blocker, and substitution is29recorded.3031## Relaxed by design3233- No strategist subagents — no adversarial spec, decomposition, or final34 review. The orchestrator writes the spec itself and `to-issues` runs35 straight off it.36- No frozen check files, no check-runner: issue-body acceptance criteria,37 builder-run tests, and the closing builder review carry the weight.38- No watchdog script — a per-wave timed background sleep is the39 stall-fallback wake.40- "Nobody grades their own work" (Hard Rules 3 and 4) is deliberately41 relaxed: the closing review is one fresh builder subagent that both42 reviews and fixes, with no check-runner over its work — the43 orchestrator's merge through postflight and the closing PR are the later44 eyes. Product docs land in integrate's docs pass, same as `/architect`.4546## Procedure47481. **Ground.** Load `codebase-design` first and use its glossary exactly.49 Read authority docs in `/architect`'s order. Tracker preflight and the50 backend canary are unchanged (`skills/architect/tracker.md`51 `## Preflight per mode`). No ground script mid-run — its reconcile52 assumes checkrun evidence this lane never produces; read the ≤3-issue53 frontier from tracker state. `skills/architect/status.ps1|.sh` works54 unchanged; the manifest sets `lane: architect-fast` so status renders the55 light-lane graph.56572. **Intake.** No question batch; anything genuinely open becomes a timed58 ruling (`skills/architect/SKILL.md` `## Timed-ruling protocol`) recorded59 as an assumption. No adversarial spec review. Write the spec with60 `to-spec` on its exact template, one named substitution: `## Validation61 strategy` names this lane's gates — builder-run tests plus the closing62 builder review-and-fix — never the check-runner or closing review.63 Create the tracking issue and manifest; cut the factory branch. Append64 status breadcrumbs to `docs/runs/<run>/status-events.jsonl` with the same65 JSONL contract as `/architect`, using fast-lane stages where they differ:66 `publish`, `issues`, `dispatch-head`, `timed-wake`, and `closing-test`.67683. **Decompose.** `to-issues` cuts at most 3 tracer-bullet vertical-slice69 issues with a file-disjoint frontier and producer interface contracts,70 two named substitutions: an acceptance-criteria section replaces the71 check path, and the change-skeleton is optional. Above the ceiling,72 stop and recommend `/architect`.73744. **Factory loop.** Dispatch every ready issue as a fresh75 worktree-isolated builder — same agent def, preloads, model resolution,76 never-commit rule, PHASE-0 execution conflicts, raw-evidence reports77 (`skills/architect/dispatch.md` `## Builder block template`), one78 substitution: the frozen-checks section becomes acceptance criteria79 quoted from the issue body. At dispatch, record each job's80 dispatch-head SHA on its issue — the job's ffcheck target and81 postflight base (`freeze_sha` field, same semantics). Each wave arms82 one timed background sleep as the stall-fallback wake; on a fallback83 wake with jobs in flight, judge liveness from report growth directly.84 On DONE, merge through postflight (`skills/architect/dispatch.md`85 `## Preflight and postflight dispatch`). On BLOCKED, answer durably and86 respawn fresh.87885. **Closing test pass.** After all issues merge, run the full test suite89 over the merged factory branch and capture the raw output.90916. **Builder review.** Dispatch one fresh worktree-isolated builder with92 the run diff scope, the test-pass output, and `/architect`'s93 calibration wording: "Flag only gaps that affect correctness, the94 stated requirements, or documented project invariants -- cite file:line95 evidence for every finding. Do not report stylistic preferences." It96 reviews code correctness, cross-slice cohesion, and test stewardship;97 records its findings as one fix issue (orchestrator-filed where the98 sandbox has no tracker access); then fixes them in its worktree. The99 orchestrator merges through postflight and closes the issue — builders100 still never commit. This is the lane's only review; post the verdict101 plus diffstat on the tracking issue.1021037. **Integrate.** Dispatch one subagent running the `integrate` stage104 skill (`skills/integrate/SKILL.md`) with the change-context digest; its105 first step is the docs pass. Standing ruling: the builder-review106 verdict is the recorded final-review substitute — integrate's "skipped107 by a recorded ruling" arm — and its graded-RUN verification set is108 empty by design; validator-suite verification still runs. The109 orchestrator rules on the result and posts the digest.110111Stage skills invoked explicitly: `codebase-design`, `to-spec`, `to-issues`,112`integrate`. `frozen-checks`, `adversarial-review`, and `final-review` are113intentionally not invoked in this lane.114115## Substitutions116117| Reused contract | Fast-lane substitution |118|---|---|119| `to-spec`'s validation-strategy naming | Builder-run tests + the closing builder review-and-fix |120| `to-issues`' per-issue check path | Acceptance-criteria section in the issue body |121| `to-issues`' mandatory change-skeleton | Optional |122| Builder template's frozen-checks section | Acceptance criteria quoted from the issue body |123| Postflight's `freeze_sha` diff base | The job's recorded dispatch-head SHA |124| Ground script's frontier line | Read from tracker state; no ground script mid-run |125| Watchdog | One per-wave timed background sleep |126| Final review | One fresh builder review-and-fix subagent fed the test-pass output; fixes merge through postflight |127| Integrate's graded-RUN verification set | Empty by design; validator-suite verification still runs |128129## Maintenance130131Re-read against each new model generation; the size ceiling and Rules kept132are invariants, the rest is prunable. Re-run133`docs/evals/trigger-prompts.md`. No feature ships without evidence in134`DESIGN.md`.