feat(rerank): installer --rerank + reorder-only default + docs (v3.9.1)#51
Merged
Merged
Conversation
Completes and hardens the 3.9.0 cross-encoder reranker delivery. - Installer: `create-obsidian-memory --rerank` installs the [rerank] extra and sets OBSIDIAN_MEMORY_RERANK=1 in the hybrid MCP env (cursor/claude/codex). Strictly opt-in — NOT part of --full (downloads a model on first use; needs a language-matched model). New `--rerank-margin` power-user flag. +1 installer test. - Safer default: rerank_margin now None (reorder-only). Measured during dev that a margin cut with a weak/wrong-language reranker DROPS correct answers; the cutoff is now explicit opt-in. The reorder-only default reorders for precision, never drops a hit. ADR-0026 updated; +1 test locking the no-drop default. - Docs: npm README, how-it-works ES/EN, --help document the reranker + new knobs and the honest model-language-fit caveat. Removed the experimental English rerank bucket (the small model can't demonstrate the gain; the fake-reranker unit tests cover the mechanism). All six version markers -> 3.9.1. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Completes and hardens the v3.9.0 cross-encoder reranker delivery.
--rerank: one-command enable — installs the[rerank]extra and setsOBSIDIAN_MEMORY_RERANK=1in the hybrid MCP env (Cursor / Claude / Codex). Strictly opt-in (not in--full): downloads a model on first use and needs a content-language-matched model. New--rerank-marginpower-user flag. +1 installer test.rerank_marginnow defaults toNone. Development measurement showed a margin cut with a weak or wrong-language reranker drops correct answers; cutting is now an explicit opt-in for a validated model. The default reorders for precision but never silently drops a hit. ADR-0026 updated; +1 test locks the no-drop default.--helpdocument the reranker + new knobs and the honest model–language-fit caveat.Honest note
The reranker's gain needs a strong, language-matched model (the multilingual default; the sibling legal vault's
jina-reranker-v2) and a candidate pool that already contains the answer. A small English model on a Spanish/synonym corpus did not help and, with the old margin cut, hurt — hence the reorder-only default. The deterministicretrieval-benchgate is unchanged (reranking stays off by default).Verification
Local CI-exact gates green:
go test,pytest(104),npm test(35+50),version:check(3.9.1),sync-agents:check,prettier,markdownlint,linkcheck(110),retrieval-benchgate.🤖 Generated with Claude Code