The sequence, and the loop around it
The stages below are the machinery, and they do run in order. What they are not is the shape of the thing: an opportunity is framed by the front end, argued over by seven chairs who each know something the others do not, and changed in shape when a statement it rested on turns out to be false. This page draws the arrows a stage table cannot — the front-end loop that wraps all of it, and every place the contracts send a candidate backward before a human ever sees it.
The front end owns the opportunity and owns none of the expertise. It writes down what the
opportunity rests on — the assumption register, a subset of the claims, each with who
depends on it and what breaks if it is false — then convenes the chairs. Each returns a
position: a verdict, the conditions that would change it, and the requests it raises.
Conditions become unverified claims, and go to the Verifier like everything else.
refuted or unconfirmed, an impact review fires — who depended
on it, what it costs, and one of exactly three outcomes: absorb (nothing load-bearing
depended on it), pivot (the opportunity changes shape, with lineage and a lesson), or
commission (the work that would settle it gets raised). There is deliberately no fourth
outcome; "note it and carry on" is what the register exists to make impossible, and
check_loop.py refuses a loop record that tries it.pivot: in the loop record, and every position written against the old shape shows
as stale until that chair answers again. Chairs disagreeing in writing is the output, not a
problem to resolve — and no chair holds a veto: blocks opens an impact review, and
killing stays Stage 5 arithmetic over verified claims.Four more loops sit inside and around the stages, and none of them are new — they are stated in the department contracts already.
queued-research instead of a kill. 45_research builds more dossier, drafts more
claims, and hands back to Verify → Rescore → Gate-check — the same three stages run again on
the same candidate. departments/45_research/CONTEXT.md names this explicitly as
"the loop that actually turns research into coverage."CONTEXT.md states this in one line: "Stage 8 feeds Stages 0 and 1." It is the
loop the whole repo is named for, and it is the only one that spans the Tier 3 boundary.80_commercial adds another: an unfillable market-model leg is filed as a research row
(source_of_question: commercial-gap), and once 45_research promotes a report
against it, the model is rebuilt with a real leg instead of an assumption. It isn't tied to a
stage number because /market-model itself isn't chained — running it is "a
decision about where to spend effort," same as /research and /wrap
(departments/CONTEXT.md).
The request ledger generalises that on-demand loop to every pair of departments: any
one may ask any other a question it cannot answer itself, the answer must name an artifact that
exists, and referred-out records an opportunity leaving the front end entirely for
M&A, an R&D programme or a partner. What remains genuinely linear is narrower, and worth
naming rather than smoothing over: Stage 3 has no automatic trigger back into 45_research when a
candidate comes back mostly unconfirmed rather than failing the 6/9 floor outright. The path exists — a human or an agent can run
/research on it at any time — but nothing makes that happen on its own between
Stage 4 and Stage 5. That is a considered omission, not an oversight: the same contract that
defines the queued-research loop also lists /research among the commands
/flywheel-cycle deliberately does not chain, because which candidate deserves a
research pass is a decision about where to spend effort, not a mechanical step every
candidate should get automatically.
What the sequence diagram above compresses into one box per stage. Each list is drawn from
that department's own ## Process section — see
Departments for the full contract, inputs and outputs
each one carries.
/scan/scan launches the Scout/seed-scan/seed-scan opens one of ten lanes, or re-checks a watchlist entry/generate, /front-end-loop, /round-table, /impact, /pivot/generate launches the Generator, primed with the rubric and the killed-idea log## Claims as unverified — no scores, no verification yet/score, /rescoreunverified claims for triage only — no number here is finalverified claims only, after Stage 3 runsstage: verifying, queued for another pass, not finished/verify/verify launches the Verifier in a fresh, structurally separate contextunconfirmed — never answered with the wrong regime's evidence/research, /research-fleet/research or /research-fleet builds or refreshes a domain dossierunverified claims from the sourced material — a dossier itself carries no tags/gate-check, /wrap/gate-check: apply the kill floors to the Verified Composite, never Stage 2's draftqueued-research, not a kill — looped back to 45_research/wrap: complete the seven wrap criteria and write the ## Wrap section/shortlist, /diligence, /log-outcome/shortlist compiles every wrapped candidate, led by evidence coverage — ranks nothing/diligence: bench evidence, failure modes, a draft FTO memo — drafts, never sign-off/log-outcome and feeds the calibration log/market-model, /business-case/market-model: state the chain first, then run the checkable primitives under each leg/business-case: who pays, from which budget, 2-4 routes to revenue, each with a kill condition/pitch-decks, /narrate/pitch-decks: three lenses, each slide a condition rather than a conclusion/narrate: synthesizes claims, dossier and decks into one story — no new facts introducedreview/ from the knowledge base — generated, never hand-editedstage: / status:/messaging/messaging: reads the candidate cold, drafts investor / user / payer message sets[unsubstantiated]## Claims as unverified