Orientation · Introduction and Reading Map
Nest Runtime Specification Set — Introduction and Reading Map
CURRENTsnapshot of 14 July 20266 min read
Reading aids · CoAgnes LabNot part of the specification; where they differ, the volume governs.
At a glance
- What the Nest runtime is: a virtual machine whose one memory is an append-only wave log, whose units are activation knots, bind descriptors and output controllers, and whose execution model is the wave. §1
- The three machine classes — deterministic, semantic, hybrid — and the three surfaces where two implementations must agree: the log, the algorithms, the YAML formats. §1
- The sixteen volumes, the reference-implementation book, and the order in which to read them. §2.1§2.2§2.3
- The four status labels — CURRENT, DECLARED, PROPOSED, SEED — and the set's conventions: the RFC 2119 key words, numbered rules over code, zero-based offsets. §3§4
- Where each part of the machine is specified, and how the set governs its own changes. §6§7
Where it sits
- Read next
- Volume 01 — Overview
- Across the set
- every volume's questionsthe machine in figures
Questions this volume answers
- What is the Nest runtime, in one sentence? §1
- Must a conforming machine use a language model? §1
- Where must two implementations agree to be compatible? §1
- In what order should the volumes be read? §2.3
- What do CURRENT, DECLARED, PROPOSED and SEED mean? §3
- Which words mark a requirement? §4
- Where is each part of the machine specified? §6
- How does the set itself change? §7
This directory is the complete developer specification of the Nest runtimeNest runtime / Nest virtual machine (Nest VM)The whole machine this set specifies: wave log + processors (topology and observers) + membrane + settle loop. In the reference project the bare word Nest historically named the workbench shell; this set reserves the machine sense and calls the workbench Nest Studio. (Vol. 00 §5)Volume 15 — Terminology — the wave-log virtual machine. It is written in the manner of a processor architecture manual and is deliberately self-contained: everything needed to understand the machine, to implement a conforming machine in any programming language, and to write systems that run on it is inside this directory. TypeScript is used for demonstration only; every normative rule is stated in language-neutral form.
The set was snapshotted from a working reference implementation (the Florispace Core project). That project's source is not required reading: the refimpl book inside this directory describes the reference implementation completely enough to build a fresh compatible one.
§1. What is specified
The Nest runtimeNest runtime / Nest virtual machine (Nest VM)The whole machine this set specifies: wave log + processors (topology and observers) + membrane + settle loop. In the reference project the bare word Nest historically named the workbench shell; this set reserves the machine sense and calls the workbench Nest Studio. (Vol. 00 §5)Volume 15 — Terminology is a virtual machine whose single memory is an append-only wave logWave logThe ordered, append-only history of committed wave tuples. The single source of truth; entries are never rewritten, only appended. aka append-log. (Vol. 03)Volume 15 — Terminology of immutable tuplesWave tupleAn immutable record in the wave log: offset, kind, key, payload. The unit of fact. aka tuple. (Vol. 03 §1)Volume 15 — Terminology, whose execution units are activation knotsActivation knotAn accumulating unit that matches wave tuples, winds them, and tests readiness; it accumulates understanding. When ready, it activates bind descriptors. Its minimal form is a single condition matcher — a degenerate configuration of the same accumulator, not a different kind. aka knot, clew (for the per-key instance see clew). (Vol. 05)Volume 15 — Terminology (accumulators), bind descriptorsBind descriptorA bind. Woken by an activation knot, it gathers named understandings from the space, judges them, runs a service, and publishes an integration. aka descriptor, bind. (Vol. 06)Volume 15 — Terminology (gather–judge–publish units), and output controllersOutput controllerA receiver of committed tuples facing outward: it claims tuples by kind/fact type and discharges them to the external world exactly once per runtime. It neither judges nor integrates — a third station beside the activation knot and the bind descriptor, standing outside the propagation cycle on its own cursor. aka effector, egress handler. (Vol. 07 §2–3)Volume 15 — Terminology (the I/O boundary), and whose execution model is the wave: a committed tuple propagates through the registered topologyTopologyThe live set of registered activation knots and bind descriptors that the wave flows through. (Vol. 02 §5)Volume 15 — Terminology until the log stops growing and no external dischargeDischargeThe asynchronous execution of an external effect for one claimed tuple, resolving with the world's answers as emissions. (Vol. 07 §2)Volume 15 — Terminology is in flight.
A conforming machine may be:
- deterministic — every serviceServiceThe function evaluated over the bound scope to produce the integration. Its kind (model instruction, deterministic function, other) is an assembly property. aka service function. (Vol. 06 §3, Vol. 08 §5)Volume 15 — Terminology and integrationIntegrationThe understanding a bind descriptor forms and publishes as a wave tuple; received by others through binding — as an activation or as a demand — so integrations compose into higher-order understanding. (Vol. 06 §1)Volume 15 — Terminology is computed by deterministic functions; the machine is fully replayable from its inputs;
- semantic — integrations and services are discharged to a large language model (or another non-deterministic oracle) through the membraneMembraneThe boundary where the wave meets the world: output controllers face outward, ingress faces inward. (Vol. 07)Volume 15 — Terminology;
- hybrid — both kinds coexist; the kind of each function is fixed by the bind and knot declarations and by the controllers installed at assemblyAssemblyThe construction of one machine instance: engine with processors, membrane with controllers — one assembly shared by every shell of a product. (Vol. 08 §1)Volume 15 — Terminology.
The choice is an assembly property, not a core property: the log format, the propagation algorithms, and the authoring formats are identical across all three classes. Compatibility between differing implementations is defined at exactly three surfaces: the log, the algorithms, and the YAML core-structure formats (see 14-conformance-and-verification.md).
§2. Contents
§2.1 Volumes
| Vol. | File | Contents | Status |
|---|---|---|---|
| 00 | 00-introduction.md | This map, conventions, naming | CURRENT |
| 01 | 01-overview.md | The machine at a glance: philosophy, figure, machine classes | CURRENT |
| 02 | 02-machine-model.md | Execution environment, stations, the architectural register file | CURRENT |
| 03 | 03-wave-log.md | The wave log: envelope, offsets, ordering, persistence (JSONL), quiescence | CURRENT |
| 04 | 04-tuple-reference.md | Tuple catalogue: system tuples, protocol families, reserved namespaces | CURRENT |
| 05 | 05-activation-knots.md | Knots: lifecycle, clews, deterministic and semantic winding, budgets | CURRENT |
| 06 | 06-bind-descriptors.md | Binds: emit descriptors, operator binds, rendezvous, gates, emit declarations | CURRENT |
| 07 | 07-membrane-and-controllers.md | The membrane: claims, discharge, correlation, failure conversion | CURRENT |
| 08 | 08-virtual-machine.md | The Nest VM: assembly, settle algorithm, machine classes, terminal states | CURRENT |
| 09 | 09-authoring-formats.md | YAML formats: pipeline grammar, records, packages, schema subset, compilation | CURRENT |
| 10 | 10-algorithmic-constructs.md | Programming guide: gates, canvases, cascades, unfold, figures | CURRENT |
| 11 | 11-extension-points.md | Extension points: rails, declared-but-unenforced constructs, widening discipline | CURRENT / DECLARED |
| 12 | 12-ext-cells-and-charters.md | Extension: Semantic Charters, Cells, CellSpace | PROPOSED |
| 13 | 13-ext-experience-protocols.md | Extension: CoAgnes experience protocols; Nest Education | SEED |
| 14 | 14-conformance-and-verification.md | Conformance classes, the golden fixture, the seven verification matrices | CURRENT |
| 15 | 15-terminology.md | The canonical vocabulary of the whole set | CURRENT |
§2.2 The refimpl book
refimpl/ — eight chapters describing the reference implementation unit by unit (kernel, topologyTopologyThe live set of registered activation knots and bind descriptors that the wave flows through. (Vol. 02 §5)Volume 15 — Terminology, knotsActivation knotAn accumulating unit that matches wave tuples, winds them, and tests readiness; it accumulates understanding. When ready, it activates bind descriptors. Its minimal form is a single condition matcher — a degenerate configuration of the same accumulator, not a different kind. aka knot, clew (for the per-key instance see clew). (Vol. 05)Volume 15 — Terminology, descriptors, membraneMembraneThe boundary where the wave meets the world: output controllers face outward, ingress faces inward. (Vol. 07)Volume 15 — Terminology and controllersOutput controllerA receiver of committed tuples facing outward: it claims tuples by kind/fact type and discharges them to the external world exactly once per runtime. It neither judges nor integrates — a third station beside the activation knot and the bind descriptor, standing outside the propagation cycle on its own cursor. aka effector, egress handler. (Vol. 07 §2–3)Volume 15 — Terminology, runtime and wiring, loaderLoaderThe component that splits an authoring pipeline into individual records and commits them as seeds. aka splitter. (Vol. 09 §6)Volume 15 — Terminology and schema, shells): its state, algorithms, edge cases, exact observable choices, and the liberty space a new implementation has. The volumes are the contract; the book is the worked existence proof and the source of every "reference field" name.
§2.3 Reading order
Volumes 01–03 for orientation; 04–07 are the reference an implementer keeps open; 08 defines what a machine must do; 09–10 are for authors of systems on the machine; 11–13 fix where and how the machine grows; 14 defines "conforming"; 15 is the vocabulary. An implementer then works through refimpl 01–07 beside the volumes; refimpl 08 sketches shells.
§3. Status labels
Every volume, and where necessary every section, carries one of four labels. The labels keep the snapshot honest: nothing declared is presented as enforced, and nothing proposed is presented as agreed.
- CURRENT — implemented in the reference implementation and covered by its regression suite; the text is a snapshot of working behaviour.
- DECLARED — present in the authoring formats and validated by the compiler, but not enforced by the runtime (for example branch isolation levels). A conforming implementation must parse and preserve these constructs and must not silently drop them.
- PROPOSED — agreed design direction, specified normatively in Vol. 12; not implemented behaviour. Implementation must land together with tests and the promotion of the affected sections to CURRENT.
- SEED — conceptual direction, specified in Vol. 13; to be checked against real product constraints before it hardens.
§4. Conventions
- Prose is technical British English.
- The key words MUST, MUST NOT, SHOULD, SHOULD NOT, and MAY are to be interpreted as in RFC 2119. They mark conformance requirements; text without them is descriptive.
- Normative algorithms are given as numbered rules or pseudocode, independent of any host language. TypeScript fragments are demonstrations aligned with the reference implementation; where a fragment and a numbered rule could be read differently, the numbered rule governs.
monospacenames refer to tupleWave tupleAn immutable record in the wave log:offset,kind,key,payload. The unit of fact. aka tuple. (Vol. 03 §1)Volume 15 — Terminology kinds, fact types, payload fields, YAML keys, or reference-implementation identifiers.- Cross-references of the form "Vol. NN §M" target volumes in this directory; "refimpl NN §M" targets book chapters. References to numbered rule lists are written "§N, check M" or "§N.M" (rule M of section N). All file links stay inside this directory.
- Mentions of the reference project's file layout (module names, artefact directories) are descriptive anchors, catalogued in refimpl 00 §3–4; a port chooses its own layout.
- Offsets, indices of log positions, are zero-based. Template item indices (
{index}in unfoldUnfoldThe constrained in-wave authoring form: a service result instantiates declared knot/close/head templates. (Vol. 06 §7)Volume 15 — Terminology templates) are one-based; this asymmetry is inherited and fixed (see Vol. 06 §7).
§5. Vocabulary and one naming note
The canonical vocabulary of the whole set is Volume 15: one term, one meaning, older synonyms noted as aka. The two central entities are the activation knotActivation knotAn accumulating unit that matches wave tuples, winds them, and tests readiness; it accumulates understanding. When ready, it activates bind descriptors. Its minimal form is a single condition matcher — a degenerate configuration of the same accumulator, not a different kind. aka knot, clew (for the per-key instance see clew). (Vol. 05)Volume 15 — Terminology (which accumulates understanding) and the bind descriptorBind descriptorA bind. Woken by an activation knot, it gathers named understandings from the space, judges them, runs a service, and publishes an integration. aka descriptor, bind. (Vol. 06)Volume 15 — Terminology (which binds, judges, and emits); within a bind descriptor, heads are part of the affinity structure.
Naming note. In the reference project the bare word Nest historically named the workbench shell. This specification set names the whole machine the Nest runtimeNest runtime / Nest virtual machine (Nest VM)The whole machine this set specifies: wave log + processors (topology and observers) + membrane + settle loop. In the reference project the bare word Nest historically named the workbench shell; this set reserves the machine sense and calls the workbench Nest Studio. (Vol. 00 §5)Volume 15 — Terminology (equivalently, the Nest virtual machine, Nest VM), because the runtime is the nest in which waves live and the workbench is one shell over it. Where the workbench is meant, this set writes Nest Studio. An overloaded word is resolved by explicit definition, not by silent reuse — the same discipline Vol. 15 §9 applies to cell.
§6. Specification map
| Machine part | Normative volume | Reference description |
|---|---|---|
| Tuple envelope, emissions | Vol. 03 | refimpl 01 §1 |
| Processor and executor contracts | Vol. 02 §2 | refimpl 01 §2 |
| Propagation engine | Vol. 02 §7, 08 | refimpl 01 §3 |
| Topology (registration, dispatch, clews) | Vol. 02 §5, 05 §2 | refimpl 02 |
| Deterministic knot | Vol. 05 §4 | refimpl 03 §2–3 |
| Semantic knot | Vol. 05 §5 | refimpl 03 §4 |
| Emit descriptor | Vol. 06 §2 | refimpl 04 §1 |
| Operator bind | Vol. 06 §3–5 | refimpl 04 §2 |
| Membrane sweep | Vol. 07 §3 | refimpl 05 §1 |
| Inference/service controller | Vol. 07 §4 | refimpl 05 §2 |
| Delegated emit templates | Vol. 06 §7 | refimpl 05 §3 |
| Settle loop | Vol. 08 §3 | refimpl 06 §1 |
| Assembly | Vol. 08 §1 | refimpl 06 §2 |
| Pipeline compiler | Vol. 09 | refimpl 07 §2 |
| JSON Schema subset | Vol. 09 §7 | refimpl 07 §3 |
| Shells, trace digest | Vol. 08 §8–10 | refimpl 08 |
§7. Governance of this set
The set carries its governance with it:
- Same work item. A change to machine behaviour and the matching change to these volumes land together — the set never trails the machine.
- Append-only history of agreements. Dated behaviour records are never rewritten, only clarified or superseded by later entries.
- Invariants apart from choices. Stable semantics, boundaries, and public contracts belong to the volumes; demo data and diagnostics only where they define required behaviour (the golden fixture does).
- Named enforcement. Every structural rule states its enforcement path — a type boundary, a narrow export, or a regression test.
- Deliberate widening. Core contracts change only by the recorded procedure of Vol. 11 §2.
- Verification. Before publication, and after any substantial revision, the set is re-verified through the seven matrices — truth, deep, connect, serviceServiceThe function evaluated over the bound scope to produce the integration. Its kind (model instruction, deterministic function, other) is an assembly property. aka service function. (Vol. 06 §3, Vol. 08 §5)Volume 15 — Terminology, knowledge, evolution, responsibility — defined in Vol. 14 §4.