| Flow | A self-contained package of contracts with typed input/output pins. The composition unit. |
| Flow instance | One running copy of a flow. A flow is the class; the instance is the object. |
| Entity | A mutable document moving through a flow instance’s lifecycle: stage, gates, and fields. |
| Stage | A named lifecycle stage. An entity is in exactly one at a time; terminal stages end it. |
| System node | Deterministic code. Subscribes to events, advances stages, emits events. No LLM. |
| Agent | An LLM session. Subscribes to events, reasons, calls tools, emits events. |
| Handler | The unit of execution attached to an event on a system node. |
| Event | A typed message with a payload schema, declared in events.yaml. |
| Gate | A named boolean on an entity, set by a handler and checked by guards — or a stage’s typed decision gate, which waits for a human verdict. |
| Join | Waits until a declared set of parallel branches has finished; duplicates are ignored and a deadline is enforced. |
| Timer | A durable time-based trigger attached to a stage. |
| Pin | A typed input or output of a flow, used to wire flows together. |
| Run | One end-to-end execution, correlated across every table — the unit of trace, replay, and fork. |