KB-6FF1

IU Core 60x Delivery/Non-reparent — 08 Next macro package

4 min read Revision 1
dieu44iu-core-mvp60xnext-macronon-reparent-rolloutv0.62026-05-22

08 — Next Macro Package

State at handoff

  • Commit 8a450a7 on main (parent 4b0d6f5); KB commit follows. 712 tests.
  • Migrations 001–013 + runtime 010–050/060/090/120/140/160/170/180/190/200 on production.
  • iu_structure_operation 46 (45 reparent + 1 deprecate, all enacted); event_outbox iu 45; iu_route_attempt 45 (44 dry_run + 1 sent); iu_tree_change_log 1; iu_route_dead_letter 0.
  • 158 IUs — 1 now deprecated (pilot.iu0.test-001).
  • DOT 60/60, no-hardcode clean, five-layer classified.
  • Delivery seam built + proven + INERT (iu_core.delivery_enabled=false, iu_core.delivery_live_routes=''). Structure-op gate closed.

Open gaps (exact)

  1. Broader non-reparent rollout — only ONE deprecate_piece is durably enacted. 11 more stale pilot.*/test/* scratch IUs remain genuine deprecate_piece candidates; split/merge/replace have no real-content case yet (they need a genuine source, not a synthetic one).
  2. Durable worker dry-run for the non-reparent family — the structure_piece_deprecated event was delivered (sent), not dry-run'd; the five non-reparent routes have no durable dry_run attempt. (sandbox/080 D7 proves the dry-run path; no durable non-reparent dry_run row exists.)
  3. Route-table durable live delivery — every iu_outbound_route row is still dry_run=true; the dry_run=false proof repointed + restored the route within one transaction. A route durably enabled+dry_run=false (the trigger guard now permits it for an allowlisted route) is unproven.
  4. PgStructureStore live psycopg run — proven over a fake connection + the SQL substrate is DB-proven (sandbox/080 D8); a real psycopg-backed run against production is still unproven.
  5. Auto-cut first integrated production run — the bridge → structure-op → event → delivery chain is proven BEGIN…ROLLBACK; no durable auto-cut run.
  6. (null)-doc IUs — 11 stale pilot/test scratch + 60 frozen enacted IUs; no encoded hierarchy.

IU_CORE_NONREPARENT_ROLLOUT_AND_DURABLE_DELIVERY

Lowest-blast-radius first:

  1. Durable non-reparent batch — deprecate the remaining 11 stale pilot.*/test/* scratch IUs in one sovereign-approved bounded batch (discovery-driven, the exact runtime/210 pattern), then run the worker dry-run on their structure_piece_deprecated events. Closes gaps #1 + #2 with the smallest footprint.
  2. Durable live delivery route — allowlist one structure route durably (iu_core.delivery_live_routes) and run the worker live so a route sits enabled+dry_run=false durably, then disable. Closes gap #3.
  3. PgStructureStore live run — a gated, dry-run-safe psycopg-backed run against production (closes gap #4).

Alternatives

  • Auto-cut first integrated production run — drive a real orchestrator CutResult through AutocutBridge → PgStructureStore → fn_iu_structure_op_* durably (still gated, no production CUT). The chain is proven BEGIN…ROLLBACK.
  • Real downstream delivery — extend fn_iu_route_deliver past the internal sql_function consumer to a real downstream target. Strictly larger blast radius — a separate sovereign macro.
  • Text-as-code layer kickoff — begin the IU-content-as-code layer on the now tree + structure-op + delivery substrate.

Recommended first: the durable deprecate_piece micro-batch for the remaining 11 scratch IUs — same proven pattern, smallest safe step from "one durable non-reparent op" to "the non-reparent family in routine durable use".

Back to Knowledge Hub knowledge/dev/laws/dieu44-trien-khai/v0.6-iu-core-60x-durable-nonreparent-delivery-autocut-open-goal/08-next-macro-package.md