KB-3D49

17 — Operator Runbook Update

3 min read Revision 1
rprunbookoperator2026-06-05

17 — Operator Runbook Update (Phase 18)

A. UI deploy runbook

  1. Pre-check: query v_rp_ui_deploy_final_readiness_guard — require verdict not FAIL and db_side_ready true (currently UI_DEPLOY_BLOCKED_BY_GIT / true).
  2. Apply the patch or push feat/rp-current-supervision (HEAD d04d8e5) from a credentialed host; rebuild the incomex-nuxt image; restart the container.
  3. Post-deploy: curl the 11 current-bound routes; confirm the page withholds its body unless the deploy guard verdict is PASS.
  4. No-go: guard not PASS, invariant real-fail above 0, static stale above 0, or stale-v1 binding above 0.

B. Generator parity / contract replacement runbook

  1. Confirm v_rp_autoscale_generator_readiness_dashboard_v2 verdict GENERATOR_PARITY_PASS_OPERATOR_REPLACE_REQUIRED and v_rp_contract_generator_validation_summary_v2 safe_to_replace_v1_backbone true.
  2. To retire the v1 UNION: build a decorated-on-generated stack (apply the shared decoration layer over v_rp_universal_node_ui_contract_generated_v2 instead of the v1 base), then re-prove parity on ALL columns (not just backbone). Only then repoint v_rp_universal_node_ui_contract_current.
  3. Keep v1 generated + v1 contract as sentinels until the repoint is proven in production.
  4. Rollback: 99_rollback.sql (drops all v2 objects; v1 stack untouched).

C. No-go conditions (replacement)

parity gap above 0; invariant real-fail above 0; guard not PASS; smoke below 15/15; anti-false-green below 6/6; full-column parity not proven for the repoint.

D. Authority blockers (not engineering)

President PROC-OWN vote (official RP); AX-PXT candidate-register + live-ledger refactor; AX-TRIGGER owner + president register (unlocks the 58 view-edit registryization).

E. CRITICAL — deploy-guard / dashboard safety on this VPS

Do NOT build or run a single SQL statement that combines multiple deep RP contract-derived views (guard + smoke + anti-false-green + autoscale). It OOMs the planner (signal 9 -> crash recovery), even under EXPLAIN. The deploy guard is a plpgsql function (fn_rp_ui_deploy_final_readiness_guard) for exactly this reason — it runs each gate as a separate statement. Query heavy dashboards (summary v2, autoscale v2, smoke) ONE AT A TIME, never combined.

Back to Knowledge Hub knowledge/dev/reports/architecture/rp-generator-parity-fix-contract-replace-ui-deploy-standby-2026-06-05/17-operator-runbook-update.md