- Re-bench on 2026-05-26 against vex 1.9.1 and ast-index 3.41.0.
- Flag findings that flipped vs the 2026-05-18 snapshot:
- ast-index Python call graph now populated (was empty in 3.27)
- vex implementations now handles generic-parameterized subclasses (v1.7.0)
- vex usages is now AST-precise on T1 languages; ast-index is now the
textual-match tool, inverting the old precision finding
- vex now has diff --base <rev>, making the "only ast-index has
changed --base" finding obsolete
- vex now ships prebuilt Windows binaries; vex self-update works
- Document new vex 1.5 -> 1.9 commands: diff, paths, reachable, check,
bundle (symbol/pr-impact/project), eval, self-update, capabilities.
- Add README entry for the doc; it was previously missing from the index.
- Bump README "Last updated" to 2026-05-26.
Point-in-time comparison of vex 1.5.0 vs ast-index 3.27.0 on a mixed-language
repo (Python/Kotlin/TS/JS, ~553 files, ~15-17k symbols). Documents:
- Indexing time, footprint, query latency for both tools
- Quality differences on real queries (usages, callers, symbol, semantic)
- Notable findings: ast-index's Python call graph was empty for this repo,
vex's implementations misses generic-parameterized subclasses, vex usages
catches comments/docstrings (text-flavored), ast-index uniquely has
'changed --base <branch>' with no vex equivalent
- Re-run instructions for validating on a different repo or newer versions
Linked from claude-code-tools.md at the end of the vex section so readers
encounter the comparison right after learning about vex. Not surfaced as a
top-level README entry since it's narrower than the other root-level guides.