KB-21E8

Topic Axis Self-Operated — 05 Automation Bridge Draft Row/Edge Plan

4 min read Revision 1
topic-axisautomationrow-edge-planview-live2026-06-04

05 — Automation Bridge Draft Row/Edge Plan (Workstream D)

Status: PLAN OPERATIONALISED — v_axis_topic_automation_candidates LIVE (read-only, non-executing, 49 rows).

Instead of inserting speculative axis_assignment routing rows (which would dangle on non-existent targets and add unretirable births), the bridge is expressed as a derived read-only view = 7 candidate topics × 7 routing patterns. No routing executed; no relation_type marked approved; no engine built. AX-TOPIC stays a routing key, not an engine.

The 7 routing patterns (per topic) — verified live in the view

target_type relation_type consumer substrate today
document classifies RP/docs 0
document_template selects Document-template select 0
workflow routes_to MOW 0 → PIV-327
task_template groups_under MOT 0
improvement routes_to MOIT (or approval_requests) 0
dot_tool handled_by DOT/Agent select 0 → PIV-328
event routes_to event_type_registry 0

The view tags each row with proposed_status='candidate', vocab_request_code='AXR-TOPIC-13' (the verb-ratification gate) and, for knowledge_graph, pilot_request_code='AXR-TOPIC-14' (the pilot gate).

Pilot: knowledge_graph (live today: 10 IU assignments, relation tagged_topic)

Exact rows the next macro applies after promotion (owner-gated; queued as AXR-TOPIC-14):

  1. axis_assignment(node='LBL-NNN'(KG), target_type='document_template', target_code='<KG-template>', relation_type='selects', status='candidate')
  2. axis_assignment(node='LBL-NNN', target_type='workflow', target_code='<KG-workflow>', relation_type='routes_to', status='candidate')
  3. approval_requests(request_type='process_improvement', proposed_action_code='create_item', entity_code='LBL-NNN', title='KG enrichment route', status='pending') Effect once added: PIV-327 (workflows by topic) and PIV-328 (DOTs by topic) flip from DEFER_NO_SOURCE to computable; resolver documents/workflows/dots_agents_events arrays populate; decision-queue document_count becomes non-zero.

relation_type vocabulary to ratify (queued AXR-TOPIC-13)

tagged_topic (live) · classifies · selects · routes_to · groups_under · handled_by. One-time governance act.

Carrier tables (no new tables)

axis_assignment (primary multi-target carrier) · universal_edges (topic↔topic broader/narrower/related for the DAG; topic↔facet already auto-managed) · event_type_registry (reference, don't duplicate; 45 rows live) · approval_requests (improvements reference the topic). Mothers READ status='active' rows — candidate rows are inert, so the view + future candidate rows execute nothing.

Why not insert candidate rows now

axis_assignment UNIQUE + NOT NULL target_code means routing rows need real targets; KG's template/workflow targets don't exist yet. Inserting placeholders = dangling references + births. The view gives the same operational plan, queryable, with zero risk. The next macro inserts the 2 concrete rows once the targets and verbs are ratified.

Forbidden compliance

No routing executed; no engine; no new tables; no relation_type approved; no production action triggered.

Back to Knowledge Hub knowledge/dev/reports/architecture/topic-axis-self-operated-decision-ui-content-automation-2026-06-04/05-automation-bridge-draft-row-edge-plan.md