Architecture
The runtime is a headless library: it orchestrates agents and enforces quality gates, with no UI of its own. Design decisions are recorded as ADRs in the repository.
How it fits together
flowchart LR
WF["Declarative workflow<br/>(WF-0xx)"] --> RT
subgraph RT["Agentic Runtime (headless)"]
direction TB
ORCH["Step orchestrator"] --> GATE{"Eval-gate<br/>(blocking / advisory)"}
GATE -- pass --> NEXT["Next step"]
GATE -- fail --> STOP["Run stops"]
end
CAT[("Versioned agent catalog<br/>pinned imports, read-only")] -. imports .-> ORCH
RT --> TRACE["Per-step traces<br/>(JSON live proofs)"]
The runtime is a read-only consumer of the catalog: agents are imported by pinned version, never mutated. Each step must clear its eval-gate before the run advances; a failed blocking gate stops the run and is recorded in the trace.
Key decisions (ADRs)
- ADR-0001 — Read-only consumer of the catalog.
- ADR-0002 — Pinned, versioned imports.
- ADR-0003 — Sidecar ownership belongs to the catalog.
- ADR-0004 — Guarded propagation of eval-gates.
- ADR-0005 — Feedback via human pull request.
- ADR-0006 — Quality referentials.
- ADR-0007 — Contracts and criteria sourced from the runtime manifest.