KB-5BD6

8000x-execute · 05 — Qdrant onboarding EXACT_GAP_NO_DRIVER (gates closed, KT-B intact)

4 min read Revision 1
iu-corev0.68000xqdrantexact-gapvector_syncboundarycarry-forward

8000x-execute · 05 — Qdrant onboarding: EXACT_GAP_NO_DRIVER

Decision

Phase F returns EXACT_GAP_NO_DRIVER. The lifecycle pre-conditions are met (86 enacted DIEU IUs ready to index), the preflight substrate works (is_ok=True), but the driver script that the README references does not exist, and two physical channels are absent (embedder credential, host-network reach to Qdrant). Per macro discipline: stop the phase, close gates, preserve safe state, return PARTIAL_WITH_EXACT_GAP with exact evidence.

Safe state preserved (verified post-decision)

Surface Value Required Status
iu_core.vector_sync_enabled gate false inert PASS
iu_vector_sync_point rows 64 unchanged PASS
iu_vector_sync_point unique unit_id 60 (all KT-B) unchanged PASS
iu_vector_sync_point indexed 61 (all KT-B) unchanged PASS
DIEU IU rows in iu_vector_sync_point 0 0 PASS
qdrant_onboarding.preflight_iu_ids(86 DIEU enacted) enacted=86 non_enacted=0 not_found=0 is_ok=True accept PASS
qdrant_onboarding.assert_enacted_only(...) no exception no refusal PASS
Forbidden actions none performed none PASS

Exact gap inventory

  1. Driver script missing. ops/qdrant-onboarding-package-8000x/run_onboarding.py referenced by the README does not exist in the repo. Only README.md ships. The 6000x macro produced cutter_agent/iu_core/qdrant_onboarding.py (preflight + bounded apply substrate, no caller).
  2. Embedder credential absent. No OPENAI_API_KEY / EMBED_* / COHERE_* / HUGGING* in /opt/incomex/.env, /opt/incomex/.env.local, incomex-claude-kb container env, or incomex-qdrant container env. cutter_agent/iu_core/vector_sync.OpenAIEmbedder requires an API key; NoopEmbedder would write garbage vectors and is unsafe for production.
  3. Qdrant network reach. incomex-qdrant exposes only ports 6333/tcp 6334/tcp on the internal docker network; no host port mapping. curl 127.0.0.1:6333 on the VPS returns connection refused. The operator host therefore cannot run the indexer directly — the driver must run from a sibling container OR a host port must be exposed.
  4. Chunker contract for DIEU bodies not verified. 86 enacted DIEU IUs: 81 with non-empty unit_version.body (max_len=3464, total=48133 chars) + 5 with empty body. cutter_agent.iu_core.vector_sync.chunk_iu_body policy for empty-body IUs is not specified — would the driver record sync_status='skipped' with a reason, or write a noop chunk? Spec needed before write window opens.

Forbidden actions actually avoided this phase

  • No draft Qdrant indexing.
  • No write to KT-B vectors.
  • No write to production_documents.
  • No vector_sync gate open (it stayed false for the entire 8000x-execute run).
  • No cross-IU vector creation.
  • No fake PASS.

Required to close in a 9000x macro

Item Owner
Ship ops/qdrant-onboarding-package-8000x/run_onboarding.py (try/finally gate, per-IU assert_boundary, structured failure capture) macro author
Source live embedder credential (OPENAI_API_KEY or equivalent) operator
Expose incomex-qdrant:6333 on 127.0.0.1 OR run driver from a sibling container with network reach operator
Decide chunker policy for the 5 empty-body DIEU IUs (skipped vs. noop chunk) macro author
Run with bounded gate; verify Qdrant point delta + iu_vector_sync_point delta + per-IU boundary + payload contains unit_id / parent_piece_id / chunk_index / chunk_count / axis_refs macro author
Retrieval smoke against one DIEU canonical_address macro author
Back to Knowledge Hub knowledge/dev/laws/dieu44-trien-khai/v0.6-iu-core-8000x-operator-execution-promotion-qdrant-closeout-open-goal/05-qdrant-exact-gap.md