KB-5813

IP Content Work — 08 UI/API Topic×Process Content Requirements

4 min read Revision 1
information-pieceui-apitopic-process-mapworkstream-gpatch-ready2026-06-04

08 — UI/API Topic × Process Content Requirements (Workstream G)

Patch packet to display the live content map. PATCH-READY, not deployed (Nuxt redeploy operator-gated).

Routes (all read-only; all counts from PG)

route source object returns
GET /axes/AX-TOPIC/content-map axis_assignment + fn_topic_node_substrate 7 topic candidates + IU lists + confidence
GET /axes/AX-PROCESS/content-map v_axis_process_inventory/candidates 60 process objects by type + 5 pilots
GET /information-map/topic-process v_information_piece_topic_process_map 11 classified relations (the matrix)
GET /information-map/topic/:node_code fn_topic_node_substrate(node_code) one topic: IUs, docs, processes, gaps
GET /information-map/process/:process_code fn_process_node_substrate(process_code) one process: components, triggers, IU-SOP, topics
GET /information-map/pilot/:pilot_code join of above for a pilot cluster pilot scope, score, decision-queue, UI payload

Handler rule (h3 / Nuxt server)

Every handler is a thin pass-through to a PG view/function. No count math in Nuxt — e.g. /information-map/topic-process is literally SELECT * FROM v_information_piece_topic_process_map ORDER BY iu_count DESC, member_count DESC. member_count/iu_count come from the view, never recomputed client-side.

Components

component data rules
TopicProcessMatrix /information-map/topic-process 7 topics × N clusters grid; cell = relation_class badge + member_count; no hardcoded levels (clusters come from view)
CandidateTopicPanel /information-map/topic/:code IU list, evidence tags, confidence, CANDIDATE badge
ProcessCandidatePanel /information-map/process/:code type, components, triggers, health, UNBORN/BORN badge
IULinkList fn_*_substrate arrays links IU → source doc (dieu39 KG-law)
DocumentBacklogPanel doc 05 backlog (static seed → future view) D1..D10 priorities
WorkflowImplicationPanel doc 06 MOW/MOT/MOIT badges per cluster
AutomationPilotPanel /information-map/pilot/:code score table, scope, primary/backup
EvidenceTracePanel view evidence column + iu_metadata_tag full provenance trace per relation

Mandatory display rules

  • CANDIDATE badge on every topic and process (neither axis is ACTIVE).
  • Governance/owner gaps visible: surface OWNER_MISSING (4 process, 9 topic) and "0 FAC-08 nodes".
  • Source evidence visible: every relation shows its evidence string + links to the KG-law section.
  • No active topic/process claim anywhere in copy.
  • No count math in Nuxt; no hardcoded levels; no DAG-forced-to-tree (matrix is many-to-many).

Backend readiness

  • v_information_piece_topic_process_mapLIVE (applied this run); /information-map/topic-process can ship immediately.
  • fn_topic_node_substrate, fn_process_node_substrate — LIVE; per-node routes ready.
  • Pilot/backlog routes need the doc 05/07 data as a small static seed or a future view (v_information_piece_content_backlog — consciously not applied this run; see doc 09).

Status

UI_CONTENT_MAP_PATCH_READY. One backend object already live; remaining routes are thin reads over existing views/functions. Operator deploys Nuxt when ready.

Back to Knowledge Hub knowledge/dev/reports/architecture/information-piece-content-work-on-topic-process-surfaces-2026-06-04/08-ui-api-topic-process-content-requirements.md