KB-6BB3

40000x · 04 — Final Product Factory Readiness Matrix

8 min read Revision 1
iu-core40000xreadiness-matrixlive-readycarry-forwardrollback-catalog

40000x · 04 — Final Product Factory Readiness Matrix

Snapshot of the IU Core product-factory surface after 40000x. "LIVE_READY" means the substrate is durably present in prod, has been exercised by at least one prior macro, and is exposed to the operator via DOT. "CARRY-FORWARD" means it is a deliberate open item for a future macro.

Lifecycle

Capability State Surface Last proven
Piece create LIVE_READY dot_iu_create_piecefn_iu_create 240x
Piece soft-delete / restore LIVE_READY dot_iu_delete_piece_soft / dot_iu_restore_piece 540x
Piece supersede LIVE_READY dot_iu_supersede_piecefn_iu_supersede 8000x (durable) / 10000x (substrate)
Piece split LIVE_READY dot_iu_split_piecefn_iu_piece_split 10000x
Piece merge LIVE_READY dot_iu_merge_piecefn_iu_piece_merge 10000x
Piece retire (deprecate) LIVE_READY dot_iu_retire_piecefn_iu_structure_op_* 540x
Piece clone LIVE_READY dot_iu_clone_piece 540x
Piece metadata refresh LIVE_READY dot_iu_update_piece_metadata / dot_iu_rebuild_metadata_axes 540x

Collections / templates

Capability State Surface Last proven
Collection create LIVE_READY dot_iu_create_collection 240x
Collection compose (file / workflow) LIVE_READY dot_iu_create_file_from_pieces / dot_iu_create_workflow_from_stepsfn_iu_compose 11000x / 12000x
Piece membership add / remove / reorder LIVE_READY dot_iu_add_piece / dot_iu_remove_piece / dot_iu_reorder_piece 540x
Collection render / validate / checkpoint LIVE_READY dot_iu_render_file / dot_iu_validate_collection / dot_iu_checkpoint_collection 540x
Template mark LIVE_READY dot_iu_register_templatefn_iu_collection_mark_as_template 15000x (mig 031)
Template instance record LIVE_READY dot_iu_record_template_instance 15000x (mig 031)
Template version register / retire LIVE_READY dot_iu_register_template_version / dot_iu_retire_template_version 18000x (mig 032)
Auto-instantiate from event LIVE_READY (productized 40000x) dot_iu_auto_instantiate_from_event 40000x (DOT) + 25000x (mig 033 + 13 durable rows)
Auto-instantiate actor-rollback LIVE_READY (productized 40000x) dot_iu_auto_instantiate_rollback_by_actor 40000x (DOT) + 25000x (mig 033, dry-run-proven)
Manifest refresh + digest LIVE_READY fn_iu_collection_manifest_refresh 12000x

Events / runtime

Capability State Notes
Composer event family LIVE_READY runtime/260; delayed lane
Piece event runtime substrate LIVE_READY mig 029; gate-bound piece_event_runtime.emit_enabled + dry_run_only
event_outbox.event_domain='piece' LIVE_READY mig 030 ALTER CHECK
event_type=iu.template.instance_auto_composed LIVE_READY inert / no route attached (mig 033)
Cross-template observability views LIVE_READY 0 unversioned + 0 orphan + 0 digest drift (25000x)
Live external delivery CARRY-FORWARD gates delivery_enabled + delivery_live_routes remain inert
Internal event → orchestrator → instance proof LIVE_READY (sandboxed) 25000x C1–C12 + bulk loop

Observability / metadata

Capability State Notes
Three-axis envelope (table + view) LIVE_READY DIEU axes 27/23/36 invariant
Envelope manual refresh LIVE_READY dot_iu_three_axis_envelope_refresh
Envelope auto-refresh on auto-compose CARRY-FORWARD (D) gate three_axis_auto_refresh_enabled currently false; design in 06-carry-forward.md
Vector boundary healthcheck LIVE_READY mig 020 / fn fixed in 9000x
8-surface healthcheck LIVE_READY all GREEN on baseline
Mac cron healthcheck LIVE_READY local crontab, exit=0
VPS systemd monitoring CARRY-FORWARD (G) package outline in 06-carry-forward.md

DOT / governance

Capability State Notes
DOT command catalog LIVE_READY dot_iu_command_catalog 26 rows (40000x 24 → 26)
Run audit LIVE_READY dot_iu_command_run (mig 018) — column is command_name
DOT conformance D9 LIVE_READY 181 objects 7/7 PASS — unchanged this macro
R280 catalog ↔ Python mirror lock LIVE_READY test_iu_core_540x_operator_runtime.py — 26 / 26 / "= 26"
cutter_governance.review_decision integration LIVE_READY mig 008 / review_decision_id keyed

Retention / append-only logs

Capability State Notes
Retention substrate LIVE_READY iu_core_retention_policy + fn_iu_core_retention_cleanup + view (mig 025)
Default retention policies (3 rows) LIVE_READY trigger_log / refresh_log / dot_iu_command_run
Auto-instantiate log retention LIVE_READY (policy only) 40000x mig 035 — 4 rows, dry-run=0 eligible, gate stays false
Retention enable NOT_ENABLED gate iu_core.retention_enabled=false — requires future authorization
Per-target actor_column extension CARRY-FORWARD needed only if a log's actor column is not literal actor AND needs actor-scoped retention through central fn

UI / external

Capability State Notes
Directus envelope read LIVE_READY dot_iu_directus_verify
Nuxt env consistency LIVE_READY (verify only) dot_iu_nuxt_config_verify; container not redeployed
Qdrant collection registry LIVE_READY iu_core_iu_chunks=149 unchanged
Qdrant onboarding driver LIVE_READY sibling-container pattern; not re-run this macro
External healthcheck aggregate LIVE_READY dot_iu_external_healthcheck
PR #669 OPEN — UNTOUCHED per authority boundary
Nuxt deploy LIVE — UNREDEPLOYED per authority boundary

Rollback / reversibility (catalog summary)

Surface Reversal Latest validated
Migration 034 (DOT registration) rollback/034_… — REFUSED-guarded on dot_iu_command_run 40000x (26 → 24 → 26)
Migration 035 (retention policy) rollback/035_… — DELETE one row; gate untouched 40000x (4 → 3 → 4)
Migration 033 (auto-instantiate substrate) rollback/033_… — REFUSED-guarded on non-empty log 25000x
Migration 032 (template versioning) rollback/032_… 18000x
Migration 031 (template registry) rollback/031_… 15000x
Migration 030 (event_outbox CHECK) rollback/030_… 11000x
Migration 029 (piece event runtime) rollback/029_… 11000x
Migration 028 (piece merge) rollback/028_… 10000x
Migration 027 (piece split) rollback/027_… 10000x
Migration 026 (supersede + retire fns) rollback/026_… 8000x
Migration 025 (retention substrate) rollback/025_… 5000x
Auto-instantiate output (actor-scoped) dot_iu_auto_instantiate_rollback_by_actor — dry_run default 25000x (dry-run); usable from 40000x as governed DOT

Operator checklist (post-040000x)

  1. Verify dot_iu_command_catalog count = 26.
  2. Verify iu_core_retention_policy count = 4.
  3. Verify all 11 IU Core write gates inert.
  4. Use the new DOT commands via the Python registry — python -m cutter_agent.iu_core.dot_commands list should show 34 entries.
  5. Do NOT open iu_core.retention_enabled until a future macro is authorized for it.
  6. Do NOT merge PR #669 or redeploy Nuxt until external authority is reconfirmed.

Remaining work after this macro

See 06-carry-forward.md for the explicit, packageable D / E / F / G outline.

Back to Knowledge Hub knowledge/dev/laws/dieu44-trien-khai/v0.6-iu-core-40000x-orchestrator-dot-retention-readiness-open-goal/04-final-readiness-matrix.md