Part 5 · 5.3 Functional Specification

The specification: the three roots, in full

Where and how flows form — the complete, current list of what the wave API offers, not a sample of it.

Source: nestvm/lib/API.md (the machine's own protocol reference).

§The three roots, in the specification's own words

"The three roots (thin transport skin): /api/service/... — the harness's REST (sessions, session meta with the core and catalogue versions, the catalogue, the shelf of programmes, a draft-plane probe); POST /api/ingest/{type}?session= — the only change of truth, one request cycle per call; GET /api/projection/{contract}?session=&… — snapshots. Refusals answer 422 with the machine's own reason."

Every service-root route is a lookup: the list of stored sessions and their watermarks; one session's own meta (its watermark, which machine class is actually mounted, the core and catalogue versions); the whole function catalogue; the shelf of programmes (split into blueprint sets and records programmes) plus a static list of techniques; the seats a Cell could be opened from; a session's lineage (its ancestors and children, 2.3); and one deliberately marked liberty — a draft-plane probe that previews a proposed figure without committing anything, kept for exploratory work only.

§The ingest type register, complete — eleven types

Every single named way to change what the machine knows, as of this writing:

typeactwhat it doesstatus
intentactIntentthe front door: bootstraps a fresh session, commits the person's opening words and the door's own clock, then — in the same request — the world names the closest-fitting study method and the loader sows itCURRENT
deepenactDeepenopen a Cell from a declared slot: a seat's charter plus a deterministic inner figure enter admission; once opened, a return figure is sown at root, addressed to carry the eventual export back ([[02-lines-of-reasoning/2-4-technology2.4]])CURRENT
factsactApplyDataone or more plain {factType, data} facts — the ordinary fact factories every form and every bare-word button on the surface useCURRENT
cell.formactFormStudyCellthe root ceremony figure plus a wanting fact and its presentations — an earlier route into admission, kept for the study-Cell fixtureCURRENT
cell.feedactFeedCellpresents an additional fragment into an already-open CellCURRENT
cell.reviewactReviewCellthe human decision: {cellRef, decision, actor} — the only door into sealed or archived ([[07-the-cell/7-4-technology7.4]])CURRENT
recordsactAssembleFigureregisters listener/doer records directly from a submitted list — a laboratory liberty, not the paradigm's authoring pathLIBERTY
figureactComposeSemanticFigurecompiles a whole figure from a plain-language intent — another laboratory libertyLIBERTY
representactRepresentthe reuse move itself, callable directly ([[02-lines-of-reasoning/2-4-technology2.4]]) — a committed value re-presented, retyped and addressed as askedCURRENT
cell.form {ceremony: composer}actFormStudyCellseeds the composer Cell specifically ([[03-the-minimal-fragment/3-3-specification3.3]])CURRENT
blueprint.admitactAdmitBlueprintre-enters a blueprint — the composer's own export, or one presented inline — into admission as a fresh Cell, all-or-nothingCURRENT

Two types are marked LIBERTY rather than CURRENT on purpose: they exist for exploratory, laboratory-side work — building a figure directly from raw records, or from a plain-language description — and are explicitly not the paradigm's own authoring path, which is always the planner-bind-plus-admission route Part 3 describes. The distinction is stated in the register itself, not left to be inferred.

§The projection register, complete — nineteen contracts

Every named computed view the machine currently offers, grouped by what kind of thing it shows:

The study's own state:

contractshows
sheet@1the living document — the intention as its head, the person's own pinned rows in the order pinned ([[04-the-standard-scenario/04-the-standard-scenarioPart 4]])
work-queue@1every figure's stage (waiting · open · published · accepted · closed), each knot as a "figure to fill" — what it hears, its declared fields, its condition, verbatim
figure-history@1one figure's whole dossier: what reached each of its knots, its intentions and their answers, what it released, what it sowed
publications@1the released rail — every bind publication and every Cell's accepted export, in order, each with its own declared presentation view
cell-lifecycle@1every Cell's state, its charter, its assessment, its review — the full record behind [[07-the-cell/07-the-cellPart 7]]
cell-graph@1the space of Cells as a graph, with provenance on every edge
study-run@1the older, pre-workbench study reading (a milestone-driven run)
figure-wiring@1how a figure's knots and binds are actually wired together
figure-pulse@1a figure's live activity — what has just moved
scene@1the milestone-driven scene ladder of the original playground surface

Debug and archival — reading the raw log itself, the one sanctioned exception to "never touch the log directly":

contractshows
trace@1one committed tuple, by address
tuple-trace@1one tuple's whole movement: what caused it, what it changed, what it produced, what shares each of its correlation stamps
station-trace@1the journal read by place (one station's whole sequence) or by actor (one controller's whole exchange history)
wave-journal@1the raw journal of one ingress wave
snapshot-atone retained machine snapshot, at an exact quiescence point

Formed at the wire itself, composed from more than one reading:

contractshows
vitalsthe watermark, tuple/knot/bind counts, which machine class is actually mounted, continuation state
blueprintsthe shelf's seats plus the static techniques list

Nineteen names, covering everything on screen anywhere in this book — the sheet, the figure index, the released rail, every Cell card, the whole debug board. Nothing shown anywhere is computed by any path outside this list.