01 · Current-State Read-Only Check (live evidence, 2026-06-05)
01 · Current-State Read-Only Check (live evidence)
Captured: 2026-06-05, READ-ONLY, directus.public, via query_pg (RO, AST-validated, 5s/10s timeout, LIMIT 500).
All facts below are live; where a checkpoint value is cited it is marked [ckpt]. Live evidence wins over old report (law §1).
1. Object inventory (does the new direction exist yet?)
v_rp% / rp_% objects present (35): contracts v_rp_universal_node_ui_contract (v1), …_v2, …_reliability; proof v_rp_dynamic_drill_proof_matrix, …_v2; acceptance …_dashboard, …_dashboard_v2; reliability v_rp_count_reliability_baseline, …_dashboard, …_label_model; lanes v_rp_axis_lane_split, v_rp_headline_safe_counts; adapters v_rp_source_adapter_coverage, …_scope_warnings, v_rp_uncovered_source_classes; detectors v_rp_static_literal_detector, v_rp_referenced_not_built_detector, v_rp_stale_parallel_source_detector, v_rp_dedup_signature_gap, v_rp_synthetic_axis_register_gap, v_rp_partition_law_status; grouping v_rp_pxt_grouping_surface + rp_grouping_policy (BASE TABLE); substrate v_rp_node_final_substrate_contract, v_rp_empty_substrate_classification; registers v_rp_aggregate_candidate_register, v_rp_classification_governance_map; blocker dashboards v_rp_officialization_blocker_dashboard, v_rp_ui_deploy_blocker_dashboard; PXT v_rp_process_trigger_*, v_rp_trigger_visibility_gap, v_rp_process_canon_gate_summary, v_rp_drill_reconciliation.
Absent (the new direction is NOT built yet):
- ❌
v_rp_universal_node_ui_contract_current(or any_currentalias) — no canonical view. - ❌
axis_source_binding/rp_axis_source_binding— no registry-driven binding object. - ❌
v_rp_full_population_drill_invariant— no full-population invariant. - ❌
v_rp_dynamic_drill_proof_matrix_computed— no computed proof.
2. Governance / registry counts (no drift vs checkpoints)
| Object | Live | Note |
|---|---|---|
axis_registry |
2 | AX-TOPIC, AX-PROCESS — both status=CANDIDATE. AX-BASE/AX-PXT/AX-TRIGGER absent. |
axis_assignment |
25 | all AX-TOPIC [ckpt]. |
pivot_definitions |
39 | |
governance_object_ownership |
0 | no owners. |
approval_requests |
230 | PROC-OWN-01..05 pending, 0 votes [ckpt]. |
event_type_registry |
52 | 30 active; process.* 0/7 [ckpt]. |
dot_tools |
309 | |
wf_process_candidate |
19 | |
wf_process_candidate_member |
143 |
axis_registry columns (the binding schema already exists): axis_code, axis_name, domain, node_source, node_filter(jsonb), relation_source, root_rule, child_rule, lifecycle_field, owner_governance_ref, substrate_resolver, pivots_ref, status, approval_ref, notes, _dot_origin. AX-PROCESS row: node_source=workflows, substrate_resolver=fn_process_node_substrate, pivots_ref=v_axis_process_pivots, status=CANDIDATE, owner GOV-MOW (pending). AX-TOPIC row: node_source=taxonomy, substrate_resolver=fn_topic_node_substrate, status=CANDIDATE.
3. Contract column shapes (the field contract delta)
- v1
v_rp_universal_node_ui_contract— 19 cols:axis_code, node_code, label, count_value, count_status, lifecycle_status, governance_status, warning_flags(jsonb), has_children, child_count, child_node_codes(array), grouping_status, final_substrate_ref, substrate_available, drill_action, next_route, owner_blocker, related_axes(jsonb), proof_source. - v2
…_v2— 21 cols = v1 +empty_reason,grouping_children_source. - reliability
…_reliability— 29 cols = v2 +reliability_label, source_scope, confidence_score(int), lane_code, count_semantics, warning_flags_v2(jsonb), blocker_type_v2, next_action_v2.
Viewdef sizes prove a thin-decorator chain: v1 = 8239 chars (the hardcoded base), v2 = 1306, reliability = 2320.
Dependency chain (from pg_get_viewdef)
v_rp_universal_node_ui_contract (v1) = 6-way UNION ALL of hardcoded axis literals/routes [base]
└─ v_rp_universal_node_ui_contract_v2 (v2) = SELECT FROM v1
LEFT JOIN v_rp_pxt_grouping_surface (DRILL_GROUPS override)
LEFT JOIN v_rp_empty_substrate_classification (empty_reason)
└─ …_reliability = SELECT FROM v2
LEFT JOIN axis_registry ar (source_scope label only)
LEFT JOIN v_rp_count_reliability_label_model lm (confidence default)
→ All node generation + business logic is in v1. v2/reliability only decorate. To registry-drive, rewrite the v1 base; v2/reliability inherit automatically.
Reliability field computation (literal/proxy — F5)
reliability_label = CASE count_status WHEN 'official_workflow'→'AUTHORITY_BLOCKED'
WHEN 'verified'/'candidate'→'CANDIDATE' WHEN 'PIVOT_MISSING'→'UNKNOWN' ELSE 'CANDIDATE' -- only 3 of 15 labels
source_scope = CASE WHEN ar.axis_code IS NULL THEN 'synthetic_axis' ELSE 'registered_axis' -- binary
confidence_score = COALESCE(lm.default_confidence, 50) -- per-label default, not evidence
lane_code = u.axis_code -- NOT the 23-lane split
count_semantics = u.count_status -- raw, not ADDITIVE/NON_ADDITIVE/PARTIAL
warning_flags_v2 = warning_flags ∪ [SYNTHETIC_AXIS?] ∪ [NEEDS_GROUPING?] ∪ [SUBSTRATE_UNAVAILABLE?] -- good, but no STALE/NOT_ADDITIVE/DEDUP
blocker_type_v2 = register_axis | president_vote | object_owner | none -- computed, good
next_action_v2 = COALESCE(drill_action,'display') -- weak; not a governance action
4. Drill-invariant violations live in v1 (the deployed-intended contract) — F3
SELECT axis_code, grouping_status, drill_action, substrate_available, count(*) FROM v_rp_universal_node_ui_contract GROUP BY …:
| axis | grouping_status | drill_action | substrate_available | n | verdict under invariant |
|---|---|---|---|---|---|
| AX-BASE | OK | DRILL | true | 5 | PASS |
| AX-BASE | OK | SHOW_SUBSTRATE | true | 34 | PASS |
| AX-PROCESS | EMPTY | SHOW_SUBSTRATE | false | 2 | FAIL_DEAD_END (v1) → EXPECTED_EMPTY (v2 banner) |
| AX-PROCESS | OK | DRILL | true | 18 | PASS |
| AX-PROCESS | OK | SHOW_SUBSTRATE | true | 2 | PASS |
| AX-PXT | NEEDS_GROUPING | SHOW_SUBSTRATE | true | 10 | FAIL_MISLEADING_SUBSTRATE (v1) → GROUPED (v2) |
| AX-PXT | OK | SHOW_SUBSTRATE | true | 2 | PASS |
| AX-TOPIC | OK | SHOW_SUBSTRATE | true | 7 | PASS |
| AX-TRIGGER | OK | DRILL | true | 7 | PASS |
12 of 87 nodes violate the invariant in v1; v2/reliability fix all 12 (10 GROUPED, 2 EMPTY_BANNER) but are not deployed.
5. Proof matrix v2 — curated, not computed — F4
26 rows: 22 PASS + 4 PASS_WITH_EXPECTED_BLOCKER + 0 FAIL. Verdict logic (pg_get_viewdef):
- base-12
FROM v_rp_dynamic_drill_proof_matrix— curated verdicts baked in, incl. case 12 (count 408, has_children=false, grouping_status=NEEDS_GROUPING, actual_action=SHOW_SUBSTRATE → verdict=PASS) = false-green. - GRP twins —
verdict = CASE WHEN grouping_status_v2='GROUPED' AND group_count>0 THEN 'PASS' ELSE 'FAIL'— computed but only checks grouping existence, not child-sum coverage of count. - EMPTY —
verdict = e.proof_verdict(from classification view). - BLK —
verdict = 'PASS_WITH_EXPECTED_BLOCKER'LITERAL,WHERE node_code = ANY(ARRAY['PROC:official_rp','PROC:jobcut_verified'])→ can never FAIL (H4).
6. Reliability dashboard (systemic)
v_rp_count_reliability_dashboard: labeled_metrics 21 · adapter 94 · dot 60 · trigger 75 · dot_executable_confirmed 186 · stale_static_literals 2 · referenced_not_built 6 · synthetic_axes_unregistered 3 · overall 83 · verdict RP_COUNT_RELIABILITY_HARDENED_WITH_PARTIAL_SOURCES.
7. Reuse assets discovered (discover-first / reuse-first, law §5)
rp_grouping_policy(base table):scope=default, threshold=50, active=true— "lists longer than 50 must drill". The contract does NOT read it (grouping logic hardcoded). Reuse target.v_process_trigger_actionability_ledger(12 rows):gap_code, axis, category, object_count, severity, recommended_owner, recommended_action, blocker_type, safe_now, note. A strong model for a real per-nodenext_action(vs currentnext_action_v2=drill_action).axis_registry: already the binding SSOT — extend, don't replace (reuse-first; do NOT create a parallelaxis_source_binding).v_rp_axis_lane_split(23 lanes),v_rp_static_literal_detector,v_rp_synthetic_axis_register_gap,v_rp_dedup_signature_gap— systemic detectors to join onto the node for true reliability labels.
8. No-drift / no-fake confirmation
All governance-engineering counts match prior checkpoints (axis_registry 2, ownership 0, votes 0, REAL_RUN 0, process.* 0/7). This audit performed zero mutations to DB/FS/UI/git; only KB docs written.