RP UI Axis — 10 Final Summary
10 — Final Summary
Outcome
Took the LIVE Topic Axis pilot from "read-only surface, not yet actionable" to: a live decision queue, a complete UI/API patch packet, 5 owner/GOV-COUNCIL approval packets, a net-zero-proven taxonomy promotion rehearsal with exact apply order, a concrete automation row/edge plan, and an end-to-end proof from live data to UI decision. PARTIAL by design — the only remaining gate is human (GOV-COUNCIL + owner). No engineering blocker.
Single live mutation (additive, reversible, rehearsed first)
| Object | Kind | State |
|---|---|---|
| v_axis_topic_decision_queue | view | LIVE; 7 rows; read-only; DROP-reversible; rehearsed BEGIN/ROLLBACK net-zero before apply |
Births created: 0. Business tables changed: 0. Taxonomy nodes: 0. Candidate promotions: 0. Source tags: 25 → 25 (untouched).
Workstream results
- A — UI/API: PATCH-READY. 7 routes (incl
/decision-queue), concrete h3 handlers, live response samples, redeploy checklist. UI source outside read allowlist → packet, not live patch. - B — Decision queue: LIVE. Evidence-ranked (STRONG/MODERATE/WEAK), classified (root/child/sibling), propose-only (Điều-39). Sibling detection caught pipeline pair.
- C — Approval packets: COMPLETE. AX-TOPIC activation; FAC-08 roots; taxonomy creation; assignment promotion; ownership (blocked — gov_ownership empty).
- D — Taxonomy rehearsal: COMPLETE. Net-zero proven 3×. Per node: +1 taxonomy, +2 auto-managed edges, +3–5 unretirable births (name-dependent). Generic LBL- codes. Per-node apply order packaged.
- E — Automation bridge: COMPLETE plan. Routing patterns over axis_assignment/universal_edges/event_type_registry/approval_requests; KG pilot rows specified; relation_type vocabulary to ratify.
- F — E2E proof: COMPLETE. Live chain data→node→substrate→evidence→decision→route→UI, all real values.
- G — No-hardcode audit: PASS. No levels/island/FK-false/auto-active/tag-deletion/Nuxt-math/fake-green. STOP states defined and observed.
- H — Next macro: TOPIC_AXIS_OWNER_APPROVAL_AND_TAXONOMY_PROMOTION (primary); RP_UI_CONSUME_AXIS_SURFACE_DEPLOY + INFORMATION_PIECE_CONTENT_WORK as parallel tracks.
Honest numbers (live 2026-06-04)
axis_registry 1 (AX-TOPIC CANDIDATE); axis_assignment 25 / 7 nodes; surface 7; pivots 14 (PIV-310 docs 5,737); decision queue 7; taxonomy 58 (FAC-08 = 0 nodes); births 1,152,860; universal_edges 2,199; source topic tags 25 / 16 IUs; governance_object_ownership 0; approved roots 0; governance gap 7.
Key new findings (this macro)
- Taxonomy node creation is in-transaction reversible (net-zero ×3) BUT commits unretirable births → one-way door per node → mandate per-node dry-run.
- Birth amplification is name-dependent (knowledge_graph → 5 births vs fresh name → 3).
- Generated taxonomy codes are generic
LBL-NNN→ promotion is an explicit token→code remap. governance_object_ownershipis empty system-wide → axis ownership would be among the first ever rows; STOP if no GOV owner code exists.- Birth gate is advisory (warning), not blocking, on taxonomy.
Blocker
Owner law-ratification + GOV-COUNCIL FAC-08 root approval (Điều-32); owner authorisation for unretirable taxonomy births. No engineering blocker.
Files (operator, local)
/tmp/axis_decision_queue.sql (applied), /tmp/axis_taxonomy_rehearsal.sql, /tmp/axis_taxonomy_rehearsal2.sql, /tmp/kg_probe.sql (rehearsal only). Rollback for the one live object: DROP VIEW v_axis_topic_decision_queue;