Skip to content

Branches and Scenarios

Status: ✅ Branch decided / ⏸ Scenario deferred — grounded in ADR-0005

Branch

A Branch is a definition/schema/code/policy overlay — a way to test schema changes off-main before merging them into the operational namespace. It is required for safe schema evolution: the RFC→migration process and Value Type version changes both assume that schema modifications can be staged and validated before they affect the live kernel. Branch is in scope from the kernel skeleton.

The kernel implements definition branching without taxing the operational read path. The operational read path stays free of branch-merge cost.

Scenario

A Scenario is a hypothetical operational-state overlay — a “what if” that branches the live entity state, not just the schema. It requires copy-on-write delta tables and read-time merge of base + overlay under every RealityContext. It is the mechanism behind blast-radius simulation in SmartOps (e.g. “what services are affected if fiber-cut-sector-44 occurs”).

Scenario is deferred past the first proof lifecycle. The as-built loop has no need for it. Its mechanism may be explored in isolation (POC 9), but it must not gate the operational loop and must not add any cost to the operational read path in the proof. Scenario is not deleted — it is deferred as a SmartOps differentiator — but it is not a current build commitment.

See also

Open questions

  • The Scenario mechanism (copy-on-write delta tables, read-time merge) is not yet designed in detail. ADR-0005 defers the design; when it becomes a build commitment, a new ADR or an update to this page is required.
  • When Scenarios arrive, they must prove they do not regress operational read p95 — this is the performance guardrail set by ADR-0005.

Architecture