KB-6BA2

IU b–f Execution Readiness Refactor — 05 IU Production-Readiness Board

6 min read Revision 1
iutests-b-freadiness-boardblockercritical-path4-mothers-blockeddocument-only2026-05-28

IU b–f Execution Readiness Refactor — 05 IU Production-Readiness Board (Outcome F)

One board per test b–f: current readiness, exact blocker, next macro, expected evidence, risk-if-skipped, and whether it blocks the 4 Mothers. Grounded in the survey (the real blocker is gates OFF + no harness, not missing tables).


1. Board

Test What it proves Current readiness Exact blocker Next macro (this pack) Expected evidence Risk if skipped Blocks 4 Mothers?
b — domain/professional axis filter IUs filterable by axis-B Constitution tags (legal_domain/topic/sectype/doc/kind) to cut/select docs HIGH — live data present (iu_three_axis_envelope 216 axis cols, iu_metadata_tag 536) None blocking the read proof. Blocker for operator ergonomics only: no dot_iu_filter_axis_b wrapper (absent from 42-cmd catalog) M-A (C1 proof) → then M-C (C2 wrapper) SELECT scripts; ≥3 domain filters with counts + sample JSON; zero-delta incl. dot_iu_command_run Low — read works; only repeatable harness missing No (read-only)
c — parent/child/grandchild tree axis IUs filterable by axis-C hierarchy HIGHiu_relation 60, iu_tree_path 199, fn_iu_subtree live None blocking the read proof. Wrapper dot_iu_subtree absent M-A (C1 proof) → M-C (C2 wrapper) subtree SELECT for ≥2 roots depth ≥3; zero-delta Low No
f — SQL link IU↔current DB IU can validate + resolve against live DB rows MEDIUM-HIGHiu_sql_link 3 rows (all enabled=false), fn_iu_sql_link_validate + v_iu_sql_link_resolved live None blocking the read proof (enabled=false suppresses delivery/capture only, not validate/resolve). Blocker for the enable/capture half: Điều 32 + bounded gate M-B (C1 read proof) → later C3 (_register/_capture_probe, deferred) per-link validate verdict (3) + resolved JSON; validator proven STABLE by inspection; zero-delta Medium — read works; live capture/enable deferred & gated No (read half); enable half is gated
d — compose / add / remove / reorder / split / merge A document can be assembled from IUs and restructured MEDIUMfn_iu_piece_split/merge live; 9 d-commands live; BUT iu_split_set/iu_merge_set EMPTY, review_decision row-builder "never committed" (TD-P1 OPEN), allow_no_review_decision=false U3 review_decision wiring + U2 bounded gate protocol (+ U5 state-machine rollback for the failure path) M-D (gate protocol, C4) → M-E (C3) d1–d7 on test IUs; real review_decision_id; committed split/merge sets; rollback; gates closed High — without gate protocol + review wiring, a split/merge could run ungoverned or wedge the cut state machine (R-C) No — but its governance machinery (review_decision) is reused by 4 Mothers later
e — trigger-in / trigger-out per IU Each IU can receive a trigger-in and emit a trigger-out, with delivery + DLQ MEDIUMevent_outbox 148076 / event_read 147715 / pending 0; route worker/heartbeat ON; route infra live (iu_outbound_route 15, fn_iu_route_deliver, iu_route_dead_letter 0) BUT no iu.* event types in the 31 registered, delivery_enabled=false U6 iu.* event-type registration + U2 bounded delivery gate M-D (gate, C4) → M-F (C2 register + C3 delivery) 4 iu.* types registered; trigger-in capture + trigger-out outbox/route attempt; forced DLQ; delivery gate closed; 15 real routes untouched Medium-high — emitting unregistered events or a non-route-scoped delivery flip could hit one of 15 real routes (R-B) No — but the event contract underpins 4 Mothers triggers

2. Readiness summary

  • b, c, f-read are PASS-able now (Wave 1, C1) with zero gate, zero mutation. They are the lowest-risk, highest-value first execution.
  • f-enable, d, e are gated behind the bounded gate protocol (M-D) and, for d, review_decision wiring (M-E). They must not run before M-D is implemented and approved.
  • The real blocker across the board is operational, not structural: the tables and functions exist live; what is missing is (1) read-only proof + harness, (2) a safe gate-open/close protocol, (3) the review_decision row-builder, and (4) iu.* event-type registration. None of these is "create the IU substrate from scratch."

3. The 4 Mothers no-go (unchanged)

4 Mothers remains BLOCKED until:

  1. IU tests b–f are demonstrable (end of Wave 4), and
  2. IU substrate readiness (Wave 5: design drift patch U11, queue/registry hardening U9, candidate registry survey / Gate B U10) is closed or explicitly accepted with known gaps by the Council.

Risk of starting 4 Mothers early (survey R1–R6): duplicate fields, industrial "đẻ rơi" (orphan/phantom/wrong-pen objects at scale), ungoverned mutation. The board above does not advance the no-go; every macro M-A…M-F is upstream of it.


4. Critical-path read

Wave 1 (now):   M-A (b,c) ∥ M-B (f-read)        -> b, c, f-read PASS-able
Wave 2:         M-C (b/c/f wrappers + harness)   -> repeatable operator harness
Wave 3:         M-D (gate protocol)              -> the hinge; unlocks Wave 4
Wave 4:         M-E (d) + M-F (e)                -> b–f demonstrable
Wave 5:         M-G (U11) + M-H (U9) + M-I (U10) -> IU substrate readiness
                                                  -> THEN 4 Mothers gate (still Council-approved)

The board's single most important message to the next Agent: start with M-A and M-B (pure read-only, no risk), publish their PASS evidence, and only then proceed. Everything mutating waits behind M-D.

Back to Knowledge Hub knowledge/dev/reports/architecture/iu-b-to-f-execution-readiness-refactor-2026-05-28/05-iu-production-readiness-board.md