The DOMAIN half of a TERMINAL Advance (ADR-0008 Decision 5 — the engine knows a domain in CONCEPT, never in DETAIL). The engine knows only "actuate the terminal delivery"; WHAT delivery means is the substation's: open a PR / merge-queue / direct-merge for code (bead tg-hlz builds those three), commit- a-chapter or export for a book, hand the artifact back for an agent supporting an agent.
Bound per-substation via ServiceBundle.delivery (DI — ADR-0008 D-H: config = VALUES in the tree, impls = DI). UNBOUND ⇒ commit-only: the terminal advance still completes, nothing is delivered, nothing fails. "Is landing armed?" becomes "which delivery method did this substation bind?", and none is a valid binding.
It never writes (invariant 2) and never touches the tree: the router reads every ambient value it needs SYNCHRONOUSLY at entry and hands them over as VALUES on the DeliveryRequest (ADR-0013 items 1/4), so a long push/PR round-trip can never race an unmount into a thrown tree lookup.
- Implementers
Properties
Methods
-
deliver(
DeliveryRequest request) → Future< StepOutcome> -
Actuates delivery for
request. Ok optionally carries the RECEIPT (a PR url, an export path), merged into the terminalstate=completewrite undergrid.result.<nodePath>.*. Failed routes the terminal route node to SUPERVISION: a failed delivery NEVER silently advances. A THROWING method is treated exactly as Failed (the per-work fail-closed posture). -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited