KB-6750

IU Core 60x Delivery/Non-reparent — 01 Precheck, survey, backup, gates

3 min read Revision 1
dieu44iu-core-mvp60xprecheckbackupgatesv0.62026-05-22

01 — Precheck, Survey, Backup, Gates

Macro

IU_CORE_DURABLE_NONREPARENT_DELIVERY_AUTOCUT_60X_OPEN_GOAL — 2026-05-22.

Host + repo

Check Value
Host MacBook/dev /Users/nmhuyen/iu-cutter-build/repo/iu-cutter
Branch main
HEAD before 4b0d6f5 (KB) / code 3f69710
Tree clean, no remote

Production identity (positive)

Check Value
Host VPS vmi3080463 (ssh contabo)
Container postgres (image postgres:16, up 4 weeks, healthy)
Role / DB directus / directus
Version PostgreSQL 16.13
Directus marker directus_collections = 164
IU surface information_unit 158, iu_tree_path 158, v_iu_tree 158

Pre-macro state survey

  • information_unit 158 — 98 draft, 60 enacted; doc_code DIEU-28 27 / DIEU-32 23 / DIEU-35 36 / (null) 72.
  • iu_structure_operation 45 (all reparent_piece, all enacted), iu_relation 45.
  • event_outbox iu-domain = 44; iu_route_attempt 44 (all dry_run); iu_route_dead_letter open 0.
  • Gates: iu_core.routes_master_enabled=true, iu_core.route_worker_enabled=true, iu_core.structure_ops_enabled=false.
  • IU Gateway: iu_create.gateway.marker_key=app.canonical_writer; allowed_marker_values includes fn_iu_structure_op + fn_iu_create.
  • fn_iu_route_deliver present as the unbuilt RAISE stub; iu_outbound_route_safe_chk CHECK makes enabled+dry_run=false impossible.

Backup

pg_dump -Fc/opt/incomex/backups/directus-pre-iucore-60x-20260522T032338Z.dump — 75 512 342 bytes — sha256 7160f32fbc27d5a14f43f51429c2362a143239f8bf3b33876a9fd2bf28bafc7b. Verified: pg_restore --list reports 279 TABLE DATA entries (valid archive).

Baseline before any mutation

  • DOT runtime/110 53/53 PASS, D8 drift 0.
  • No-hardcode scan of sql/iu-core — 0 secret / api-key / private-key / IP.
  • Test suite 686 passed.

Mandatory gates — all 14 PASS before any production mutation

  1. Host correct (MacBook repo, clean tree). 2. Target identity positive (DB directus, PG 16.13, 164 collections). 3. Fresh backup + sha verified. 4. DOT / no-hardcode / five-layer baseline clean, 686 tests pass. 5. Candidate selected by live discovery (02). 6. deprecate_piece is bounded + reversible (lifecycle-only, one row). 7. Rollback authored before apply (rollback/013, runtime/rollback/200, fn_iu_structure_op_rollback). 8. Gateway write-guard path legitimate (fn_iu_structure_op registered). 9. Worker stays controlled — delivery seam fail-closed. 10. Delivery target internal sql_function, registry/ config-backed, reversible (03). 11. dry_run=false limited to the internal target (04). 12. Disable path known (close gates / rollback/013 / rollback/200 / fn_iu_structure_op_rollback). 13. runtime/110 verifies post-change visibility (60/60). 14. No layer invisible to DOT / five-layer (06).
Back to Knowledge Hub knowledge/dev/laws/dieu44-trien-khai/v0.6-iu-core-60x-durable-nonreparent-delivery-autocut-open-goal/01-precheck-survey-backup.md