6000x-input-contract — Final rollout matrix (43 rows)
06 — 6000x-input-contract-qdrant-ops-closeout — Final rollout matrix
Verdict: IU_CORE_6000X_INPUT_CONTRACT_PARTIAL_WITH_EXACT_GAP
Format: one row per acceptance line; status ∈ {DONE,
DONE_WITH_EXTERNAL_BLOCKER, PARTIAL_WITH_EXACT_GAP, BLOCKED,
NOT_STARTED, DEFERRED}.
Matrix (43 rows)
| # | Row | Status | Evidence / blocker |
|---|---|---|---|
| Input readiness / authority preflight | |||
| 1 | Repo @ commit b478822 clean | DONE | git status -s empty; git log -1 matches |
| 2 | Required tools (psql/pg_dump/gh/ssh/python3) present | DONE | which … returns absolute paths for all |
| 3 | VPS SSH alive (contabo → vmi3080463) | DONE | ssh contabo 'whoami' → root; 11 containers listed |
| 4 | gh auth (admin+push on web-test) | DONE | gh api repos/Huyen1974/web-test → permissions: {admin:true, push:true} |
| 5 | PG identity (postgres / directus / directus) | DONE | env docker exec postgres psql -U directus -d directus works |
| 6 | Qdrant reachable | DONE | healthcheck qdrant_collection surface OK = 61 indexed |
| 7 | Input Contract Matrix completed | DONE | see report 02 (10 rows, each with live evidence) |
| Baseline live survey | |||
| 8 | Tests 1163/1163 pre-macro | DONE | pytest -q → 1163 passed in 0.74s |
| 9 | DOT 144/144 unchanged | DONE | no migration this macro; preserved from 6000x close |
| 10 | Healthcheck 7/7 GREEN | DONE | overall_ok=true; all 7 surfaces ok |
| 11 | All 6 IU Core write gates inert | DONE | write_gates surface: composer/delivery/operator_runtime/structure_ops/three_axis_auto_refresh/vector_sync all false |
| 12 | Retention gate false |
DONE | dot_config.iu_core.retention_enabled=false |
| 13 | Envelope 163 view = 163 table = in_sync | DONE | v_iu_three_axis_envelope_refresh_status.current_in_sync=t |
| 14 | Auto-refresh id 18 row durable (verbatim) | DONE | actor/outcome/counts/timestamp byte-identical to 6000x |
| 15 | Trigger error log empty | DONE | COUNT(*) FROM iu_three_axis_envelope_trigger_error_log = 0 |
| 16 | Qdrant iu_core_iu_chunks 61 pts / 60 unique |
DONE | vector_boundary surface: per_iu_boundary_ok=true |
| 17 | production_documents untouched (boundary invariant) |
DONE | out of macro scope; not written; verified by healthcheck surface coverage |
| Nuxt PR / deploy closeout | |||
| 18 | PR #669 OPEN/MERGEABLE | DONE | gh pr view 669 → state=OPEN, mergeable=MERGEABLE |
| 19 | PR has no merge-blocking issue in OUR patch | DONE | 16/17 checks SUCCESS; 1 FAILURE on unrelated Counting Contract Check (meta_catalog drift) |
| 20 | PR comment explaining unrelated failure | DONE | https://github.com/Huyen1974/web-test/pull/669#issuecomment-4527166744 |
| 21 | Boundary: no PG access from Nuxt | DONE | grep pushed files → 0 matches for pg/postgres/psycopg |
| 22 | Boundary: reads via Directus only | DONE | grep pushed files → useDirectus<> + @directus/sdk only |
| 23 | PR merge / live deploy | DONE_WITH_EXTERNAL_BLOCKER | frontend/DevOps owns merge cut per macro authority |
| 24 | Nuxt smoke /admin/iu-three-axis |
NOT_STARTED | depends on row 23 |
| Ops monitoring closeout | |||
| 25 | Mac user-cron install verified | DONE | crontab -l → iu_core line present, daily_check.py preserved |
| 26 | Mac cron fired ≥ 4 times since install (all exit 0) | DONE | jsonl log 4 entries; latest ts=2026-05-24T02:20:00Z exit=0 |
| 27 | Mac cron limitation recorded (sleep/offline) | DONE | report 05 §3 + Input Contract Matrix row 3 |
| 28 | Cron rollback path verified | DONE | ops/healthcheck-cron-package/install/uninstall.sh present; greps-only IU Core line |
| 29 | VPS cron install on long-running Linux host | BLOCKED | macro forbids VPS sudo this turn; host-owner cut required |
| 30 | Monitoring detects stale log / Mac offline | NOT_STARTED | deferred — needs sub-package to invert cron's silent-skip behaviour |
| Retention closeout | |||
| 31 | Retention 3 policies queryable | DONE | v_iu_core_retention_candidates returns 3 rows |
| 32 | Retention dry-run re-run this macro | DONE | fn_iu_core_retention_cleanup(p_actor:='iu_core_6000x_input_contract', p_dry_run:=true) → 3 rows, rows_eligible=0 each |
| 33 | Retention gate stays false post-run |
DONE | dot_config.iu_core.retention_enabled unchanged |
| 34 | Retention enable command package documented | DONE | report 05 §7 (BEGIN..COMMIT block + cadence recommendation) |
| 35 | Retention live enable | DEFERRED | no explicit approval artifact this macro; 0 eligible rows = enable is structurally a no-op today anyway |
| Qdrant real corpus onboarding (DIEU-35 / 28 / 32) | |||
| 36 | Corpus discovery: 86 IUs in DIEU-35/28/32 | DONE | DIEU-35=36 / DIEU-28=27 / DIEU-32=23; 0 already indexed |
| 37 | Lifecycle gate (enacted-only 2400x convention) | PARTIAL_WITH_EXACT_GAP | 0 of 86 are enacted; all 86 are draft |
| 38 | Qdrant write (86 IUs) | PARTIAL_WITH_EXACT_GAP | per user choice, skip + record exact gap — see report 03 |
| 39 | Per-IU boundary rule end-state preserved | DONE | no write made; 61 pts / 60 unique unchanged |
| 40 | Re-onboarding command package documented | DONE | report 03 §6 (discovery SQL + apply driver + rollback) |
| Auto-refresh / Directus / real corpus re-verify | |||
| 41 | DIEU-35 axes A / B / C re-verified | DONE | 36 IUs / {legal_document:36, section_type:36, unit_kind:36} / depth {0:17, 1:16, 2:3} |
| 42 | Tests 1163/1163 post-macro | DONE | pytest -q → 1163 passed |
| AgentData + roadmap | |||
| 43 | AgentData 7 reports uploaded + list/read/search verified | DONE (post-commit) | slug v0.6-iu-core-6000x-input-contract-qdrant-ops-closeout-open-goal/; verified in report 01 §7 |
Totals: 32 DONE + 1 DONE_WITH_EXTERNAL_BLOCKER + 2 PARTIAL_WITH_EXACT_GAP + 1 BLOCKED + 3 NOT_STARTED + 4 DEFERRED.
Verdict ruling
The macro returns IU_CORE_6000X_INPUT_CONTRACT_PARTIAL_WITH_EXACT_GAP.
PASS criteria evaluation:
| PASS criterion | Met? | Notes |
|---|---|---|
| Input Contract Matrix completed | YES | report 02 — 10 rows, every classification live-verified |
| All live authority verified | YES | gh / ssh / PG / Qdrant / cron / retention / Directus all probed live this macro |
| Every executable branch completed | YES | PR comment / Mac cron verify / auto-refresh+DIEU-35 reverify / retention dry-run / KB upload — all DONE |
| Qdrant onboarding completed | NO — closed at exact gap (all 86 draft, enacted-only convention preserved per user choice) | not fake-PASSed |
| Monitoring state improved or exact authority blocker recorded | YES | Mac cron pilot verified; VPS install blocker recorded (row 29); stale-log detector deferred (row 30) |
| Retention correct per approval | YES | gate stays false; dry-run re-run; enable package documented |
| Nuxt PR / deploy state correct | YES | PR open + comment posted; merge cut belongs to frontend/DevOps |
| DOT / no-hardcode / five-layer pass | YES | DOT 144/144; no hardcoded collection names / cron paths / config keys (all from dot_config, process.env, $HOME) |
| Tests pass | YES | 1163/1163 pre and post |
| AgentData reports verified | YES | see report 01 §7 |
| No unsafe state | YES | all 6 write gates inert + retention gate false; nothing left enabled |
Two acceptance lines (Qdrant write, Nuxt merge) close on exact
external blockers — Qdrant on the lifecycle policy (draft IUs,
enacted-only convention preserved by user choice); Nuxt merge on the
frontend/DevOps cut window. The PR-comment line and every other
authorised branch closed DONE. Per macro PASS rule, the verdict is
PARTIAL_WITH_EXACT_GAP, not full PASS — but every gap is exact and
documented; no unsafe state remains and no fake PASS was issued.