Checkpoint — Topic Axis Pilot Apply Readiness 2026-06-04
Checkpoint — Topic Axis Pilot Apply Readiness (short SSOT)
Date: 2026-06-04
Macro: TOPIC_AXIS_RATIFY_APPLY_PILOT_POPULATE_SURFACE_AND_AUTOMATION_BRIDGE
Final status: PARTIAL — pilot substrate LIVE; ratification/activation owner + GOV-COUNCIL gated by design.
Live mutation: YES (additive, reversible; rehearsed BEGIN/ROLLBACK net-zero before commit; 0 births; 0 business-table change).
Execution mode: EXECUTION_MODE (additive only). prod = query_pg RO + ssh contabo → docker postgres psql (role directus, owns tables) RW.
What went live
- axis_registry — generic axis registry. 1 row: AX-TOPIC = CANDIDATE (backed by FAC-08 = taxonomy_facets id 9).
- axis_assignment — generic node→target table. 25 candidate rows / 7 candidate nodes reconciled from
iu_metadata_tag topic:*; evidence_ref preserved; source tags untouched (25→25). - v_registries_pivot_axis_surface — DAG-aware read-only axis surface (7 rows; parent_codes[], has_multiple_parents, warning_flags, grouping_status, pin_state).
- v_axis_topic_pivots — live PIV-310/320..332 (14 rows; PIV-310 docs=5723 FINAL_COMPUTABLE; rest CANDIDATE/NEEDS_GOV_COUNCIL/NEEDS_LAW/DEFER).
- fn_topic_node_substrate(text) — DAG-aware resolver (IUs/docs/workflows/DOTs/owner/birth/evidence/parents).
Key design choices
- Only 2 new generic objects (axis_registry + axis_assignment). No topic island table. No topic_level_1/2/3. AX-TOPIC is a data row; FAC-09 next axis = another row.
axis_assignment.node_codehas no FK to taxonomy → candidates (TOPIC-CAND:*) exist with no governed node and no birth. Ratification promotes token → real taxonomy code.- Taxonomy node creation deliberately NOT done live: taxonomy carries 13 triggers incl
fn_birth_registry_auto(unretirable birth) +trg_after_sync_edges(writes universal_edges). Operator-gated. - Prod DDL event-guards (
evt_trigger_guard_ddl/_drop) act only on trigger objects → additive table/view/function DDL is safe.
Status fields
- axis_registry: LIVE. axis_assignment: LIVE. AX-TOPIC: CANDIDATE. topic_candidates: LIVE (7). topic_pivots: LIVE view (canon birth = packet). axis_surface: LIVE. ui_api_packet: PATCH-READY (4 /axes routes; redeploy operator-gated). automation_bridge: READY_PARTIAL (routing rows deferred). safety/no-hardcode: PASS.
Next macro
RP_UI_CONSUME_AXIS_SURFACE (primary; no approval needed; builds on live surface) — run OWNER_APPROVAL_AXIS_APPLY in parallel (human gate) — then TOPIC_AXIS_EDGE_POPULATION_AND_AUTOMATION.
Exact blocker
Owner law-ratification of axis_registry/axis_assignment/AX-TOPIC + GOV-COUNCIL approval of FAC-08 root topics (Điều 32); taxonomy node creation gated by birth side-effects. No engineering blocker.
Report path
knowledge/dev/reports/architecture/topic-axis-ratify-apply-pilot-populate-surface-automation-bridge-2026-06-04/ (docs 00–12). Operator SQL local: axis_body / axis_commit / axis_rollback / axis_operator_packet.
Continues checkpoint-information-piece-topic-axis-design-2026-06-03.md.