Benchmarks

Measured retrieval quality

Vinemap ranks files with a structural code graph (imports, calls, symbols) plus BM25, optional embeddings, and session memory — not embedding chunks. Scores below are exported from engine/eval/export_results.py; anyone can reproduce them locally.
100.0%Mean precision@5
100%Hit rate (24/24)
4Golden suites

Last exported: 8/2/2026, 8:49:21 PM UTC

Ranking

Graph + BM25

Lexical, structural expansion, call edges, cluster-aware ranking, and BM25 over symbols and module docs.

Privacy

100% local

No cloud API. Index and eval run entirely on your machine from the open-source engine.

Quality

CI gated

GitHub Actions runs python eval/run_eval.py --all on every push; regressions fail the build.

fixture_auth_python

Mean precision@5: 100.0% · hit rate 100%

QueryExpectedP@5
password hashing saltapp/auth.py1.00
get user from databaseapp/db.py1.00
login handler typescriptweb.ts1.00

fixture_go_service

Mean precision@5: 100.0% · hit rate 100%

QueryExpectedP@5
JWT login handlerinternal/auth/login.go1.00
validate password credentialsinternal/auth/login.go1.00
list users handlerinternal/store/users.go1.00
health check endpointcmd/server/main.go1.00

fixture_ts_api

Mean precision@5: 100.0% · hit rate 100%

QueryExpectedP@5
Stripe payment intent checkoutsrc/payments/stripe.tssrc/handlers/checkout.ts1.00
validate cart items totalsrc/cart/validate.ts1.00
webhook signature verificationsrc/payments/stripe.ts1.00
order service place ordersrc/handlers/checkout.ts1.00

vinemap_self

Mean precision@5: 100.0% · hit rate 100%

QueryExpectedP@5
MCP serverengine/vinemap/mcp/server.py1.00
password hashingapp/auth.py1.00
license activationengine/vinemap/license.py1.00
context packengine/vinemap/pack/packer.py1.00
session memoryengine/vinemap/memory/session.py1.00
symbol auditengine/vinemap/pro/audit.py1.00
connect cursor agentengine/vinemap/connect.pyengine/vinemap/agents/cursor.py1.00
file watcher debounced re-indexengine/vinemap/watch.py1.00
SQLite incremental content hash storeengine/vinemap/graph/sqlite_store.py1.00
tree-sitter go imports parserengine/vinemap/scanner/parsers/treesitter_parser.py1.00
federated shared graph OIDC teams serverteams/server/federated.pyteams/server/auth.py1.00
Stripe checkout webhook licenseapi/main.py1.00
monorepo package clusters boundariesengine/vinemap/scanner/monorepo.py1.00

Methodology

  1. Index each fixture or the Vinemap monorepo with tree-sitter parsers.
  2. Run natural-language queries through the production ranker.
  3. Score precision@k: fraction of expected files appearing in top-k ranked paths.
  4. Fail CI if mean precision drops below each suite's threshold.

Reproduce locally

git clone https://github.com/rohit0x62/vinemap.git
cd vinemap/engine
pip install -e ".[dev,treesitter]"
python eval/run_eval.py --all
python eval/export_results.py   # refresh website JSON