🔥 v0.1.6 closes: the scoring fake retires in favour of embedded shards, both adapters share one identity and read path, and the phase is sealed - #79
Conversation
There was a problem hiding this comment.
🟡 Changes recommended
The service zero-norm count can race with its scroll, and two public counter/configuration descriptions are inaccurate.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
Closes v0.1.6 by exercising embedded vector persistence in tests, unifying adapter identity/read behavior, and finalizing phase documentation.
Changes:
- Replaces deterministic scoring fakes with temporary embedded shards.
- Shares point-ID derivation and typed payload decoding across adapters.
- Documents recall completeness and marks the phase complete.
File summaries
| File | Description |
|---|---|
tests/vector_port_contract_tests.rs |
Adds bounded embedded-root cleanup. |
src/usecases/retrieve.rs |
Migrates retrieval tests to embedded storage. |
src/usecases/correct_forget.rs |
Migrates correction tests and failure wrappers. |
src/test_support.rs |
Introduces the temporary embedded-store fixture. |
src/ports/vector_candidate.rs |
Documents completeness guarantees. |
src/policy.rs |
Removes obsolete test export. |
src/models/vector/record.rs |
Removes fake-record conversions. |
src/models/vector/candidate_record.rs |
Removes the fake record type. |
src/models/vector.rs |
Removes its fake-record re-export. |
src/memory.rs |
Uses embedded storage in facade tests. |
src/config/app_settings.rs |
Documents vector backend settings. |
src/composition.rs |
Documents both vector-store modes. |
src/api/types/retrieval.rs |
Documents completeness verdicts and counters. |
src/adapters/qdrant/store.rs |
Adds scoped counting and shared payload handling. |
src/adapters/qdrant/payload.rs |
Centralizes identity and payload decoding. |
src/adapters/qdrant_edge/mod.rs |
Reuses shared logic and hardens shutdown tests. |
README.md |
Corrects embedded filtering description. |
docs/roadmap/development_roadmap.md |
Marks v0.1.6 finished. |
docs/design/roadmap-phases/v0_1_6_embedded_vector_candidate_recall.md |
Finalizes phase status. |
docs/decisions/implementation/ADR-I-0024-vector-candidate-recall-reports-completeness-and-prefilters-never-match-unknown.md |
Clarifies exhaustive recall semantics. |
docs/coding-agent/plans/completed/v0-1-6-embedded-vector-recall-plan.md |
Records completed work and validation. |
docs/coding-agent/lessons.md |
Captures implementation and review lessons. |
Cargo.toml |
Bumps the crate to 0.1.6. |
Cargo.lock |
Synchronizes the package version. |
Review details
- Files reviewed: 23/24 changed files
- Comments generated: 3
- Review effort level: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
There was a problem hiding this comment.
🟡 Changes recommended
The closeout status conflicts with pending required evidence, and the ADR split lacks required reciprocal supersession metadata.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Review details
Suppressed comments (1)
docs/coding-agent/plans/completed/v0-1-6-embedded-vector-recall-plan.md:3
- The plan is marked done even though its Definition of Done still requires the evaluation repository's cross-mode comparison at closeout (line 16), while the new progress entries explicitly say that evidence is still pending (lines 264 and 267). Either record the approved waiver by updating the goal/DoD, or keep the plan open until the required evidence is consumed; otherwise the closeout status is internally inconsistent.
- Files reviewed: 30/31 changed files
- Comments generated: 1
- Review effort level: Balanced
|
Follow-up 0f3e90e (+ a20b7ef): the zero-norm verdict's scanned count comes from the final scroll response that closed the scope (no separate count request that could race writes); fetched is documented as the final prefix size; Settings::new documents when the store location is validated; the prefilter ruling moves from ADR-I-0024 into the new ADR-I-0028 with all downstream references updated; the remaining time-relative wording in three records is rewritten; the backfill prerequisite is stated in the payload note and the phase document; the orchestrator rules' date is current. Reviewed internally (cm-reviewer, bounded re-check, approved); bare and live suites pass with a zero-delta temp-directory census. |
…the completed plan records the cross-mode evidence waiver Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… pending there by ruling Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… evidence consumed when produced Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…t-a-gate rule Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ation repository's part is consumed when produced Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ced here Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
|
Closeout consistency (f4e2a7e..21d9786, docs only, reviewed internally): reciprocal partial supersession between ADR-I-0024 and ADR-I-0028; every statement in the completed plan, the phase document, ADR-I-0023, and ADR-I-0025 now uses one rule for companion-repository evidence: this repository's evidence is produced and cited, the evaluation repository's rows are dispositioned as pending there and consumed when produced, never a closeout gate (decider ruling recorded in ADR-I-0023). This resolves the suppressed Copilot note that the plan was marked done while its Definition of Done required pending evidence. A Progress Log entry records the 2026-09-03 plan approval. |
Summary
v0.1.6 Wave 5, Task_7 (closeout), stacked on Task_4. With this PR the stack holds the complete phase.
scannedfrom the scope count; the duplicate vector-config validation is reduced; stale header comments and the README filtering line are corrected; the last test-only payload field constant is deleted.scannedandfetchedcounters; the port trait documents the verdict guarantees; the facade constructor andSettings::newdescribe both vector-store modes. The exhaustive verdict is defined by its semantic condition (every scoped record scored through an adapter-known exhaustive path with the cohort closed), reconciled in ADR-I-0024's wording.Validation
--all-targets --all-features -D warnings; rustdoc with warnings denied; barecargo test(396 library, 31 integration, 1 doctest; 5 ignored) with a temp-directory census of zero delta; zero-hit censuses for the retired fake, its record type, and the deleted payload constant; service-up suite with the live switch and the ignored Qdrant tests.🤖 Generated with Claude Code