Skip to content

feat: port khive-retrieval — hybrid retrieval composer#302

Merged
ohdearquant merged 5 commits into
mainfrom
feat/port-khive-retrieval
May 22, 2026
Merged

feat: port khive-retrieval — hybrid retrieval composer#302
ohdearquant merged 5 commits into
mainfrom
feat/port-khive-retrieval

Conversation

@ohdearquant
Copy link
Copy Markdown
Owner

Summary

  • Ports hybrid retrieval orchestration layer from khive-internal
  • Composes khive-hnsw (vector), khive-bm25 (text), and khive-fusion into a unified pipeline
  • Graph traversal (BFS, DFS, shortest path), persistence adapters, cross-encoder reranking
  • Evaluation harness, weight learning, replay engine
  • ~7.1K LOC, tests pass

Split from #297 (staging). Merge after: #298 (fold), #299 (fusion), #300 (bm25), #301 (hnsw).

Branch includes dep crates for compilability — only the khive-retrieval/ diff matters for review.

Test plan

  • cargo check -p khive-retrieval clean
  • cargo test -p khive-retrieval — all pass

🤖 Generated with Claude Code

ohdearquant and others added 3 commits May 22, 2026 12:27
Ports the retrieval orchestration layer from khive-internal. Composes
khive-hnsw (vector), khive-bm25 (text), and khive-fusion into a unified
hybrid search pipeline with graph traversal, persistence adapters,
cross-encoder reranking support, and evaluation harness.

Includes prerequisite crates (hnsw, bm25, fusion) and fold objective
registry for compilability. Gates on their individual PRs for merge.

~7.1K LOC, tests pass.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Accept main's versions of khive-fusion, khive-bm25, khive-hnsw.
Fix clippy: derive Default for ClearanceLevel instead of manual impl.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Weighted fusion is constrained to exactly 2 sources (vector + keyword)
by the HybridSearcher trait hierarchy. Add assertion to catch misuse.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
ohdearquant and others added 2 commits May 22, 2026 13:58
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
PR #306 relocated ObjectiveRegistry from khive-fold to khive-runtime.
This branch predated that change — sync both crates to main.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@ohdearquant ohdearquant merged commit 904a987 into main May 22, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant