KB-5A9E

13 — UI Current Contract Package v2

2 min read Revision 1
rpuicurrent-packagev2badges2026-06-05

13 — UI Current Contract Package v2

UI must consume _current aliases only (now repointed to the corrected v2/v3 stack). No direct v1/v2/reliability names.

Surfaces the UI binds (all _current)

surface now points to use
v_rp_universal_node_ui_contract_current current_v2 node rows + count + badges
v_rp_full_population_drill_invariant_current invariant_v2 per-node invariant_status
v_rp_dynamic_drill_proof_matrix_current computed_v2 per-axis proof
v_rp_dynamic_drill_acceptance_dashboard_current v3 acceptance summary
v_rp_count_reliability_dashboard_current v2 reliability summary
v_rp_static_literal_live_mismatch_current static_v2 literal/live badge

Fields the UI renders (now available on the contract _current)

invariant_status (join by node_code) · reliability_label · source_scope · confidence_score · count_semantics (= grain: group_bucket / leaf / leaf_scoped / ledger_scalar) · count_provenance · grouping_scope · reconciles_against · count_correction_flag (badge: COUNT_CORRECTED_FROM_LIVE) · governance_status / synthetic / candidate / official · requires_view_edit (from registry_driven) · next_action_v2.

Consumption mechanism

The UI's read path is the env-gated read-only gateway rpQuery(sql) (server/utils/rpGatewayDb.ts). New-contract handlers issue e.g. SELECT … FROM v_rp_universal_node_ui_contract_current WHERE axis_code=$1 and … FROM v_rp_full_population_drill_invariant_current. If RP_PG_* unset → honest 503, never fabricated data.

Not done (out of scope / gated)

No UI deploy/push (forbidden; operator-gated). The production registries-pivot route still reads legacy pivot views (see 14) — wiring the new-contract handlers is the operator/dev step of the UI productionization macro.

Back to Knowledge Hub knowledge/dev/reports/architecture/rp-count-substrate-fix-registryization-generator-fullpop-v2-2026-06-05/13-ui-current-contract-package-v2.md