KB-7F7D

IU Core 240x Composer — 03 Composer proof: sandbox/100 + runtime/250

3 min read Revision 1
dieu44iu-core-mvp240xcomposer-proofsandbox-100runtime-250v0.62026-05-22

03 — Composer proof: sandbox/100 + runtime/250

sandbox/100 — full composer proven BEGIN…ROLLBACK

sandbox/100_piece_native_composer_probe.sql exercises the whole migration-015 layer on the real production schema, one BEGIN … ROLLBACK, zero durable rows. The composer gate is opened only inside the aborted transaction. Result: 12/12 probes pass.

Probe Result
M1 gate-closed refusal a mutating fn RAISEs insufficient_privilege while shut
M2 collection create an empty collection is minted
M3 compose file from scratch a 3-piece file composed, 3 pieces minted via the birth gate
M4 compose workflow from steps a 2-step workflow composed, each step a minted IU
M5 add existing piece an existing IU appended at order 3 → 4 pieces
M6 reorder piece last piece moved to order 0; render confirms
M7 remove piece + renumber a piece removed → 3 remain, contiguous
M8 render ordered render returns 3 pieces, order 0..2
M9 validate fail-closed healthy file ok=true; empty collection ok=false
M10 manifest deterministic two refreshes yield an identical digest
M11 healthcheck corpus healthcheck runs
M12 composed piece three-axis a composed piece is in v_iu_metadata_envelope AND v_iu_content_group

Two real bugs caught + fixed during the proof: (1) fn_iu_collection_validate text[] || text operator mis-resolution (malformed array literal) → fixed with array_append; (2) fn_iu_collection_remove_piece left an order gap → fixed to renumber remaining pieces contiguous.

runtime/250 — the first durable composer pilot

runtime/250 committed the first durable composer use with a minimal, fully-reversible footprint:

  • discovery-driven: the document with the most IUs (DIEU-35) + its first 3 pieces by sort_order, resolved live — no doc code / uuid baked;
  • assembled by fn_iu_compose with existing pieces only0 IUs minted;
  • the composer gate opened only for this one transaction, closed before COMMIT;
  • the collection is draft lifecycle — inert, no event, no delivery.

Committed: iu_core.composer.pilot-doc-001 (document, draft, digest 909ea67e8b9e7dd72da242cbbee02510), 3 active memberships, fn_iu_collection_validateok=true. Durable footprint: +1 iu_piece_collection, +3 iu_piece_membership.

Production state preserved

Post-mutation: information_unit 158 (0 minted), iu_structure_operation 57, iu_metadata_tag 330, event_outbox iu 56, iu_route_attempt 56, iu_tree_change_log 1 — all unchanged. iu_piece_collection=1, iu_piece_membership=3. All gates closed (composer_enabled=false, structure_ops_enabled=false, delivery_enabled=false).

Rollback / disable readiness

rollback/015 (drops the 16 objects + gate; refuses non-empty tables); runtime/rollback/250 (deletes the 3 memberships + 1 collection; information_unit untouched); the composer gate closable.

Back to Knowledge Hub knowledge/dev/laws/dieu44-trien-khai/v0.6-iu-core-240x-piece-native-authoring-composer-textcode-autocut-delivery-open-goal/03-composer-proof.md