KB-2300

00 · README First — T2 RP Canonical Contract Design Alignment & Technical Spec (2026-06-05)

7 min read Revision 1
terminal2design-auditrp-canonical-contractregistry-drivenfull-population-invariantcomputed-proofreliability-labelsread-only2026-06-05

00 · README First — Terminal 2: RP Canonical Contract Design Alignment & Technical Spec

Date: 2026-06-05 · Mode: READ-ONLY (Terminal 2 Design Auditor) · DB: directus.public Verdict: PARTIAL (design advanced and is implementation-ready; T1 final checkpoint absent → AWAITING_T1_FINAL). Mutations: NONE except this KB audit/design doc set (13 docs + 1 checkpoint under this report dir).


What this is

This is the technical design supplement that brings the Registries-Pivot (RP) architecture into sync with the newest implementation direction:

  1. Canonical _current contract behind which versioned views hide.
  2. Registry-driven axis binding (axis_registry as the single source of axis→source→child→substrate→route mapping).
  3. Full-population drill invariant (every node, not 26 curated cases).
  4. Computed proof matrix (verdict derived from the invariant, not literal PASS).
  5. Reliability labels integrated into the per-node UI contract (not shallow proxies).
  6. Synthetic-axis governance labeling (AX-BASE / AX-PXT / AX-TRIGGER).
  7. No-hardcode / no-static-literal principles applied to the contract layer.

It is written so T1 can implement without rediscovery. Every gap carries an exact spec, a classification, and a severity.

How to read it

Doc Content
00-readme-first This file — orientation, verdict, top findings.
01-current-state-readonly-check Live read-only evidence (objects, counts, viewdefs, distributions).
02-canonical-contract-design-review _current contract architecture + version lifecycle + stale prevention.
03-registry-driven-axis-binding-design axis_registry as binding SSOT; kill the 6-way UNION; new-axis-without-UI-edit.
04-full-population-drill-invariant-design Invariant predicates, fail/expected-blocker statuses, UI behavior per status.
05-computed-proof-and-count-reliability-design Computed proof spec + final reliability field contract.
06-synthetic-axis-governance-design AX-BASE/AX-PXT/AX-TRIGGER register/candidate/derived recommendation.
07-birth-governance-rp-sync-matrix Synchronization matrix across birth/axis/ownership/approvals/pivots/events/UI.
08-adapter-source-coverage-design Adapter registry, freshness policy, partial/unknown behavior, scanner automation.
09-ui-architecture-design-review Generic drill renderer, badges, fallback; source UNVERIFIED this run.
10-technical-design-supplement The consolidated updated design spec (all areas).
11-next-t1-implementation-order Exact ordered T1 backlog (P0→P3) with DDL sketches.
12-final-summary Verdict, classifications, what is correct, what is drift, what to label.

T1 current state

checkpoint-rp-contract-canonical-registry-driven-fullpop-nohardcode-2026-06-05.md is NOT present in the KB (404). T1's canonical-contract macro has not yet produced a final checkpoint. This audit therefore continues from the latest available checkpoints and marks T1-current-state = AWAITING_T1_FINAL.

Latest available implementation state = checkpoint-rp-count-reliability-adapter-reconciliation-2026-06-05 (the reliability layer) + the two drill checkpoints + the prior T2 systemic audit. The reliability layer is the newest applied work; the canonical/registry/invariant/computed-proof work (predecessor's P0-1..P0-3) is NOT yet implemented.

Top findings (one-line each)

  • F1 / ARCHITECTURE_GAP / P0 — No canonical _current view. Three contracts exist (v1 19-col, v2 21-col, reliability 29-col); UI has no version-stable name to bind. v1 is deployed-intended but stale/broken; the corrected logic lives only in undeployed v2/reliability twins.
  • F2 / ARCHITECTURE_GAP / P0 — Contract is view-driven-with-metadata, NOT registry-driven. v1 is an 8239-char 6-way UNION ALL of hardcoded axis literals/routes. reliability reads axis_registry only to label source_scope, never to generate nodes. axis_registry already holds the binding schema but has only 2 rows.
  • F3 / HARD_BUG(design)/P0 — Drill invariant is not enforced on full population. Live in v1: 10 AX-PXT nodes = NEEDS_GROUPING + drill_action=SHOW_SUBSTRATE (false affordance to a 12-row gap ledger), 2 AX-PROCESS nodes = SHOW_SUBSTRATE + substrate_available=false (dead-end). 12/87 nodes violate the invariant; no view flags this across the population.
  • F4 / HARD_BUG(design)/P0 — Proof matrix verdicts are curated/literal, not computed. v_rp_dynamic_drill_proof_matrix_v2 blocked branch hardcodes verdict='PASS_WITH_EXPECTED_BLOCKER'; base-12 carries curated verdicts including false-green case 12 (count 408, NEEDS_GROUPING, SHOW_SUBSTRATE → PASS). No full-population invariant feeds the verdict.
  • F5 / DESIGN_DRIFT / P1 — Reliability fields are shallow proxies. reliability_label is a 3-value CASE on count_status (not the 15-label vocabulary); lane_code=axis_code (not the 23-lane split); count_semantics=count_status (not ADDITIVE/NON_ADDITIVE/PARTIAL); confidence_score=label-default (not evidence-based). Systemic detectors (stale-literal, dedup-inert, not-additive) exist but are not joined onto the node.
  • F6 / GOVERNANCE_BLOCKED + DESIGN_DRIFT / P1 — 3 synthetic axes unregistered. AX-BASE/AX-PXT/AX-TRIGGER absent from axis_registry → RP-visible-but-not-governed. AX-PXT must stay permanently DERIVED; AX-TRIGGER is a real candidate awaiting owner; AX-BASE is a structural lens.
  • F7 / DATA_DEBT / P2 — Static ledger literals + phantom/test pivots. PXT ledger residual_reconcile=8 stale vs live 2; job_queue=8 vs live 13; phantom PIV-301/302/303/310; MTX-TEST in prod set.
  • Credit (unchanged, verified): no fake-official (official RP 0, ownership 0, votes 0, REAL_RUN 0), birth-safe, REAL_RUN fail-closed, divergences are labeled, no Nuxt math. The governance posture is honest; the debt is engineering/architecture debt T1 can fix without authority.

Design alignment verdict

DESIGN_ADVANCED_AND_IMPLEMENTATION_READY. The newest implementation direction (canonical/registry/invariant/computed-proof/reliability) is correct and necessary, but only the reliability fields and a registry label join have landed. The structural moves (P0-1 canonical _current, P0-2 registry-drive + kill UNION, P0-3 full-population invariant + computed proof) are designed here, not yet built. T1 can build all of them birth-free, with no authority.

See 12-final-summary for the full classification table and P0/P1/P2 list.

Back to Knowledge Hub knowledge/dev/reports/architecture/parallel-terminal2-rp-canonical-contract-design-alignment-technical-spec-2026-06-05/00-readme-first.md