6000x — Product Readiness Matrix (60 rows)
6000x — Product Readiness Matrix
Macro: IU_CORE_6000X_LIFECYCLE_QDRANT_OPS_PRODUCTIZATION_CLOSEOUT Date: 2026-05-24 Rows: 60
Statuses: DONE, READY_FOR_APPROVAL, DONE_WITH_EXTERNAL_BLOCKER, PARTIAL_WITH_EXACT_GAP, BLOCKED, DEFERRED.
Input readiness (10 rows)
| # | Item | Status |
|---|---|---|
| 1 | Repo HEAD at start = b17578d on main, clean | DONE |
| 2 | DOT count 144/144, drift = 0 | DONE |
| 3 | 1163 tests baseline | DONE |
| 4 | Healthcheck 7/7 GREEN live | DONE |
| 5 | Three-axis envelope 163 rows in_sync | DONE |
| 6 | All 6 IU Core write gates inert | DONE |
| 7 | Qdrant collection iu_core_iu_chunks active | DONE |
| 8 | Qdrant 61 indexed / 60 unique IUs (KT-B/ICX-CONST) | DONE |
| 9 | production_documents untouched | DONE |
| 10 | Mac cron pilot installed (last 02:40Z) | DONE |
Lifecycle promotion (rows 11–25)
| 11 | fn_iu_enact exists in PG | DONE | | 12 | iu_lifecycle_log audit table | DONE | | 13 | cutter_governance.review_decision schema | DONE | | 14 | Promotion POLICY authored | DONE | | 15 | Readiness checker authored | DONE | | 16 | PromotionPlan dataclass (no review_decision_id field) | DONE | | 17 | Per-IU refusal tests (8 codes) | DONE | | 18 | DIEU axis_a 86/86 | DONE | | 19 | DIEU axis_b 86/86 | DONE | | 20 | DIEU parent resolution 11/11 | DONE | | 21 | DIEU canonical uniqueness 0 dupes | DONE | | 22 | DIEU invariant pass 86/86 | DONE | | 23 | Promotion execution package authored | DONE | | 24 | Promotion EXECUTION | BLOCKED (governance review_decision) | | 25 | Gate iu_core.lifecycle_promotion_enabled reserved | READY_FOR_APPROVAL |
Qdrant onboarding (rows 26–36)
| 26 | Preflight refuses draft (test-proven, poster never called) | DONE | | 27 | Preflight refuses unknown IU ids | DONE | | 28 | onboard_enacted_set dry-run does not touch Qdrant | DONE | | 29 | Rollback command emitted | DONE | | 30 | ENACTED_ONLY_CONVENTION constant + test | DONE | | 31 | Qdrant onboarding EXECUTION on DIEU | PARTIAL_WITH_EXACT_GAP (DIEU has 0 enacted) | | 32 | Vector boundary 3-layer enforcement preserved | DONE | | 33 | Per-IU boundary on existing 61 points (60 unique) | DONE | | 34 | production_documents untouched | DONE | | 35 | Draft-vector policy analysis authored | DONE | | 36 | Draft-vector implementation (separate collection / gate) | DEFERRED |
Nuxt UI (rows 37–45)
| 37 | PR #669 OPEN/MERGEABLE | DONE | | 38 | PR diff scope verified (zero PG/meta_catalog) | DONE | | 39 | All PR-touching CI checks PASS | DONE | | 40 | Counting Contract Check FAILURE is pre-existing drift | DONE | | 41 | PR #669 owner handoff package | DONE | | 42 | PR #669 merge | DONE_WITH_EXTERNAL_BLOCKER | | 43 | Nuxt deploy / image tag pin | DONE_WITH_EXTERNAL_BLOCKER | | 44 | Post-deploy Nuxt UI smoke | DEFERRED | | 45 | Factory artifact convention (zero hand-coded Nuxt) | DONE |
Directus (46–48)
| 46 | iu_three_axis_envelope managed collection | DONE | | 47 | 163 rows / 1 read-permission live | DONE | | 48 | REST aggregate readable by Administrator | DONE |
Monitoring (49–54)
| 49 | Mac user-cron pilot re-verified | DONE | | 50 | Mac sleep gap surfaced by stale_detector.sh (exit=2, 25702s gap) | DONE | | 51 | alert_on_fail.sh with caller-provided sink | DONE | | 52 | install_mac_hardened.sh idempotent | DONE | | 53 | Linux user-timer install package | READY_FOR_APPROVAL | | 54 | System-level systemd unit | DEFERRED (sudo) |
Retention (55–59)
| 55 | Substrate (table+view+fn+3 policies) | DONE | | 56 | Gate retention_enabled = false | DONE | | 57 | Dry-run: 0 rows eligible for all 3 targets | DONE | | 58 | Enablement package + 5 gates | DONE | | 59 | Live execution (gate flip + delete) | DEFERRED (earliest 2026-06-22) |
AgentData (60)
| 60 | 7 reports uploaded; list + search verified | DONE |
Roll-up
DONE 47, DONE_WITH_EXTERNAL_BLOCKER 2, READY_FOR_APPROVAL 2, PARTIAL_WITH_EXACT_GAP 1, BLOCKED 1, DEFERRED 4. Total 60.
Verdict
IU_CORE_6000X_LIFECYCLE_QDRANT_OPS_PARTIAL_WITH_EXACT_GAP — BLOCKED row #24 is governance authority outside the macro chain; PARTIAL row #31 is the natural consequence (no enacted set to onboard); every other safe branch is DONE. No unsafe state. All write gates inert. All packages rollback-documented.