The task
hippo-memory (756★ at writing) gives coding agents a persistent, decaying, provenance-tracked memory store that survives tool switches — same .hippo/ store whether you run Claude Code, Cursor or Codex. Recall is deliberately cheap: BM25 over stored memories, no embedding API.
The maintainer's 'Receipts' discipline is what makes this case worth curating: every measurement the project has ever published is indexed in docs/evals/, pre-registrations sit next to results, and one earlier claim was formally retracted (v0.11.0 informal magnitude, RETRACTED at v1.7.9, mechanism still shipped).
The Jev reranker question is exactly the System One shape: given a query and 20 candidate memories, rank the few that matter — a Score-style judgment per candidate, thresholds in code, no generated prose.
How each model was used
Cross-encoder baseline
- ·Free, local, offline — the default path costs nothing
- ·Reranks BM25 candidates and passes the top 5 memories into context
- ·Answer rate on graded tests is the project's quality bar
Jev reranker (opt-in)
- ·`hippo recall "<query>" --reranker jev` — Jev reranks the candidate set
- ·Top 2 memories passed into context instead of 5
- ·Versioned model ID logged per response; feature off by default
- ·~$0.0004 per recall at early-access pricing
Results
| Metric | Free local cross-encoder | Jev reranker (opt-in) |
|---|---|---|
| Recall@1 | 0.41 | 0.62 |
| Memories needed for same answer rate | 5 | 2 |
| Graded answer tests (3 tests) | cross-encoder level | no gain — published |
| Cost per recall | $0 (local) | $0.0004 |
| Statistical check | — | 20/20 seeds · null 0/200 |
What moved the needle
Ranking improved, answers did not — and both facts are published
On three graded answer tests, Jev-ranked context answered no better than cross-encoder-ranked context. The maintainer's conclusion: what Jev buys today is a shorter context, not a smarter answer.
Context compression is the real economics
If 2 ranked memories answer as well as 5, every downstream LLM call gets cheaper and faster — the reranker pays for itself in the generation step it feeds.
The rigor is the differentiator
A 2000-draw paired bootstrap with 20/20 seed stability and a permutation null is more statistical care than most vendor launch posts manage; it is the standard reader-submitted cases should aim at.
What didn't work & limits
- ✕No answer-rate gain: the reranker improves ranking and context efficiency, not answer quality, on the tests run so far.
- ✕Private 300-query developer store — not reproduced on a public benchmark; your mileage will vary with your memory corpus.
- ✕Adds a paid network call to a path that is free and offline by default; that is why it ships opt-in.
- ✕Jev is English-primary per TypeSafe's own guidance; multilingual memory corpora are untested here.