Home / Projects / Orchestrata Ultimate / Decisions / ADR index / ADR-0011

ADR-0011: Detect incompleteness rather than prove completeness

field value
Status Accepted
Date 2026-07-23
Register factory (docs/adr, 4-digit ids)
Source docs/adr/0011-detect-incompleteness-not-prove-completeness.md — permalink at bdafa201a (unchanged on master since that commit)
Wiki register entry ADR-0011 (wiki status: Accepted)

← ADR-0010 · ADR-0012 →

The record

Context

The build is only autonomous if the design has no open decisions. The obvious gate — "certify the design is decision-complete" — is undecidable in general, and the first attempt at it (a Definition-of-Ready that checked boxes were filled: every requirement has a node, a test, an ADR) was vacuous: it verified the presence of artefacts, never the sufficiency of the decisions behind them.

The useful asymmetry: completeness cannot be proven, but incompleteness can very often be detected — the same relationship testing has to correctness. Independent BDD/requirements research confirms the field has no completeness metric analogous to branch coverage; every practical heuristic is a necessary condition, and the stopping rule ("until the group is satisfied the scope is clear") is irreducibly a human residual-risk judgement.

Decision

Replace the completeness proof with a battery of incompleteness detectors, run at design time rather than discovered mid-build. Definition of Ready = no detector fires (plus a positive human floor, ADR-0015).

The battery spans four kinds:

  1. Assumption ledger + discrimination check — the mechanised form of "I noticed I was about to guess".
  2. Interpretation mutation — mutate the meaning, not the code.
  3. Lexical/structural detectors — vagueness lint, undefined terms, orphan/unmapped graph checks.
  4. Logical detectors — design-time contradiction (unsatisfiability) and under-constraint.

Alternatives rejected

Consequences

Provenance

Round-2 Opus and Sonnet both showed decision-completeness is undecidable and that DoR's structural checks cannot see semantic under-specification. Framing refined in round 3 after Opus identified the "silence as verdict" contradiction. Independently corroborated by BDD/Specification-by-Example research (Adzic; Wynne's Example Mapping; Oliveira et al.).

Rulings cited

None.

Specs cited