KB-4D99

IU Core 1k — 05 DOT, no-hardcode, five-layer, acceptance hardening

4 min read Revision 1
iu-core1kdotno-hardcodefive-layeracceptancedot-iu-cutter

05 — DOT · no-hardcode · five-layer · acceptance hardening

1. DOT — 113 -> 121

runtime/110 after migration 019: 121/121, every D9 class ok=true, D8 drift 0.

  • table 16 -> 18 (iu_vector_sync_point, dot_iu_runtime_lease)
  • view 16 -> 17 (v_iu_vector_sync_status)
  • function 40 -> 44 (fn_iu_vector_sync_enabled, fn_iu_vector_sync_record, fn_dot_iu_runtime_lease_acquire, fn_dot_iu_runtime_lease_release)
  • trigger 3, event_type 15, route 16 — unchanged
  • config 7 -> 8 (iu_core.vector_sync_enabled)
  • total 113 -> 121 (+8)

runtime/110's _iu_core_expect SSOT + the D9 verdict VALUES were updated in the SAME commit as the DDL (c16d4a0). The D8 drift guard's table pattern was extended with iu\_vector%. The DOT-count tests in 7 prior-macro test files were updated to 121.

2. No-hardcode — PASS

Comment-excluded scan over all 7 new/changed files: 0 password / DSN / IP / :5432 literal (the only matches are the literal check-tokens inside the no-hardcode TEST itself). Every candidate set is live-discovered: the vector plan walks iu-tree/; deployment coordinates are argv; the lease holder is a caller argument; point_key is derived from the manifest path. The registry stores digests, never body text; the Qdrant secret was never read or logged.

3. Five-layer sync

  • PG — real, durable: migration 019 (8 additive objects) + 3 iu_vector_sync_point dryrun rows. All additive / reversible (rollback/019). IU data (information_unit 163, collections 3, memberships 8, cmd_run 18, change_log 56) unchanged.
  • Directus — none; the view->collection exposure stays a runbook.
  • Nuxt — render-only; no component contract change.
  • AgentData / KB — this macro's 7 reports uploaded + verified.
  • Qdrant / vector — connector + gate + registry BUILT; bounded dry-run proven (3 dryrun points, no external write). External apply gated + blocked on the api-key secret + an embedder.

4. Acceptance hardening suite

no-hardcode audit PASS (0 real violations); DOT scan 121/121 D8 drift 0; five-layer classified; rollback drill (rollback/019 drops all 8 objects, static-tested); disable drill (every gate has a close path, end-state all inert); backup/restore readiness (hashed -Fc backup, 3159 entries); event idempotency/dedupe (sandbox/150 T5/T6/T7, sandbox/170 T3); dead-letter health 0 open; command coverage (17 dot_iu_* governed, RuntimeLease unit-proven); report integrity (7 reports content-verified).

5. Rollback / disable readiness

  • Code/DDL: rollback/019 drops the 2 tables, 1 view, 4 functions, 1 config — reverting the surface to 113.
  • Gates: close vector_sync_enabled (the new gate); all others at the controlled end-state.
  • Data: the 3 iu_vector_sync_point dryrun rows are truncatable; the lease table is empty. No durable IU mutation to reverse.

6. Tests

1020 passed (was 981; +39 in test_iu_core_1k_vector_sync_lease.py). The DOT-count assertions in test_iu_core_ddl.py + 6 prior-macro test files were updated 113 -> 121.

Back to Knowledge Hub knowledge/dev/laws/dieu44-trien-khai/v0.6-iu-core-1k-vector-operator-ui-delivery-acceptance-open-goal/05-dot-fivelayer-acceptance.md