Expand description
jevr (Jev Retrieval): three-stage concept-to-files retrieval.
Stage 1 generates recall-oriented candidates locally (BM25 + keyword-variant union); Stages 2–3 use TypeSafe Jev for precision-oriented verification and a final listwise ranking.
Modules§
- bm25
- Stage 1: per-kind BM25 indexes over subtoken-aware code tokens. Eager in-memory BM25 Stage 1 backend (Lucene variant, code tokenizer).
- candidates
- Stage 1: BM25 ∪ git-grep candidate union, capped per variant and lane. Candidate union + git-grep insurance (Stage 1 support).
- config
- All tunables in one struct; precedence defaults < YAML < CLI flags. Configuration-driven design: all tunables in one struct.
- expansion
- Stage 1: query keyword-variant expansion feeding the BM25 passes. Keyword variants for Stage 1.
- jev
- TypeSafe Jev API layer: client, question builders, wire schemas. TypeSafe Jev (System One) API layer.
- output
- Output renderers:
path:start-end score,--snippets,--json. Output renderers. - rerank
- Stage 3: one listwise Choice per lane orders the kept files. Stage 3: final ordering.
- verify
- Stage 2: concurrent per-file verification against Noul questions. Stage 2: precision-oriented verification.
- walk
- Gitignore-aware walk and the code/document
FileKindsplit. Gitignore-aware file walker + extension filters. - windows
- 100/20-line windowing under the 24-window / 24 KB request envelope. 100/20 line windowing + UTF-8-safe byte caps + request batching.