Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Proof, memory, and decisions

An autonomous system becomes hard to trust when it cannot answer three questions: Why does this behavior exist? Where is it implemented? What proves it still works? Supernova makes those questions part of the project model.

A two-way trace

Each requirement carries two complementary fields:

  • Origin points backward to the decision, defect, or product claim that created it.
  • Evidence points forward to the proof required before the claim is satisfied.

Requirements form a directed acyclic graph that rolls from implementation details toward project outcomes. Source files have matching file-level specifications; Rust code uses active @R# annotation spans to bind implementation lines to those specifications. Tests and coverage artifacts bind back to the same requirements.

flowchart TD
    decision["Decision or product claim"] --> requirement["Requirement + evidence obligation"]
    requirement --> filespec["Per-file specification"]
    filespec --> code["Annotated implementation"]
    code --> evidence["Test, review, metric, or attestation"]
    evidence --> requirement

This enables queries in both directions: from a code line to its reason and proof, or from a changed requirement to the code, tests, and dependent outcomes it may affect.

Evidence is typed

Different claims need different proof. Supernova distinguishes unit and integration results, coverage, field metrics, critical-user-journey exercises, human approvals, external correspondence, documents, and independent agent attestations.

The kind, producer, subject, revision, freshness, and trust level matter. A passing local stub cannot satisfy an obligation for a provider-network result. A whole-suite coverage hit cannot prove that the specific declared test exercised a requirement’s lines.

Satisfaction is a derived rollup over the required evidence. It is not a status word someone may set by hand.

Proof can expire without erasing history

Isolated evidence can turn red after a code change. Field evidence can degrade with real usage. Attestations can expire or be revoked. When a required input decays, the satisfaction reading changes and the control loop rechecks affected parents.

The original feature or issue remains closed as a historical delivery record. New remediation work is filed at the most concrete useful level after scoped judgment. This avoids reopening the past while still refusing to call stale behavior healthy.

Decisions behave like case law

Architecture decisions live in a ledger with source authority, affected contracts, and formal supersession. A newer ruling cites and overrules the older one; the old record remains visible but no longer authoritative.

Routine analogous cases can apply precedent. Security, authority, system-boundary, founding-property, and genuinely ambiguous changes escalate. Accepted decisions name a propagation owner and a closure query so stale operational prose does not quietly survive beside the new rule.

Memory has owners

Supernova does not put every useful fact in one database:

  • the wiki owns requirements and evidence obligations;
  • monitor owns current evidence claims;
  • issues own imperative work history;
  • Kafka owns the correlated event trail;
  • VCS owns code history;
  • agents own disposable personal memory and derived indexes.

These stores can reference each other without competing for authority. Wiping an agent’s memory does not erase product truth; rebuilding a client library does not destroy state.

The validator is part of the build

The repository validator checks document contracts, requirement graph integrity, spec/source path mapping, annotations, evidence references, test symbols, and coverage joins. Broken traceability is a build failure, not a documentation task deferred until after shipping.

What is working now

The trace validator, requirement graph, per-file specifications, source annotations, decision ledger, and broad test mapping are active in the Supernova repository today. Production evidence collection and long-window freshness are less complete than in-repository trace proof. See project state.