KB-3E97

IU Core Hygiene — 04 Five-layer sync matrix

3 min read Revision 1
dieu44iu-core-mvphygienefive-layer-syncv0.62026-05-21

IU Core Constitution/DOT Hygiene — 04 Five-layer sync matrix

Closes prompt-hygiene audit finding HYG-5 (five-layer impact not consistently classified).

Layers: PG · Directus · Nuxt · AgentData/KB · Qdrant/vector

Layer Impact of the IU Core surface Justification
PG PRIMARY — all 33 objects live here. Tables, views, functions, triggers, routes, gate keys, event type. IU Core is, by design, a PG-native substrate.
Directus Unaffected. The 33 objects are additive sidecar DDL; none is registered in directus_collections/directus_fields, so the Directus admin UI does not surface them. Intentional — IU Core is governance substrate accessed via SQL functions, not Directus CRUD. The DB is the directus app DB, but IU Core performs no ALTER on directus-managed tables (per sql/iu-core/README.md safety contract).
Nuxt Unaffected. No Nuxt route or component consumes any IU Core table/view/route. The existing UI feed reads iu_notification_event (the pre-IU-Core path), not the IU Core event_outbox path. Intentional — dry_run=false and downstream delivery are blocked; there is nothing for Nuxt to consume yet.
AgentData / KB Unaffected by the objects themselves. IU Core macro reports live in AgentData (knowledge/dev/laws/dieu44-trien-khai/v0.6-iu-core-*), but no IU Core runtime object writes to AgentData. Intentional — KB is the audit-trail layer, not a runtime sink.
Qdrant / vector Unaffected. No IU Core object performs a vector write. delivery_seam.py declares a vector target kind, but every DeliveryTarget is UnbuiltDeliveryTarget and fn_iu_route_deliver RAISES. Intentional — the vector delivery target is an unbuilt seam; it activates only under the dry_run=false macro.

Summary

Of the five layers, only PG is affected. The other four are intentionally unaffected, and the justification is the same forbidden boundary the macro chain has held throughout: dry_run=false and downstream delivery are blocked, so no cross-layer effect can yet exist.

First cross-layer effect — forecast

The first layer to gain a real IU Core effect will be Directus → Nuxt, when the dry_run=false macro builds the delivery seam (fn_iu_route_deliver

  • a real DeliveryTarget). At that point a five-layer re-classification is mandatory before activation — it must be a gate of the dry_run=false macro, not an afterthought.

Verdict

Five-layer sync matrix PASS — impact classified for all five layers; the four unaffected layers are justified, not merely assumed.

Back to Knowledge Hub knowledge/dev/laws/dieu44-trien-khai/v0.6-iu-core-constitution-dot-hygiene-repair-scale-readiness-open-goal/04-five-layer-sync-matrix.md