Skip to content

Releases: VeraTools/vera

v1.4.1

Choose a tag to compare

@github-actions github-actions released this 10 Sep 05:41

Bug Fixes

  • cli: agent activation: snippet rewrite, index-root walk-up, -n trap, stale-warning dedupe (#280)
  • core: harden legacy ~/.vera detection (hidden files, unreadable dir) (#277)
  • cli: report unproven vera launchers instead of ignoring them (#249)
  • eval: match CPU vendor case-insensitively in host_cpu provenance test (#273)

Other Changes

  • release: install cargo-zigbuild with its ziglang dependency in one venv
  • repo: public-launch cleanup pass
  • run CI on stock GitHub-hosted runners, reserve Blacksmith for releases (#278)
  • release: build Linux targets with cargo-zigbuild (glibc 2.28, real musl C++ runtime) (#276)

Full Changelog: v1.4.0...v1.4.1

v1.4.0

Choose a tag to compare

@github-actions github-actions released this 04 Sep 12:04
8fd6c7c

Features

  • retrieval: enable vector filter-during-scan by default (#268)

Full Changelog: v1.3.1...v1.4.0

v1.3.1

Choose a tag to compare

@github-actions github-actions released this 03 Sep 10:06
3a54095

Features

  • cli: port path-filter hint to vera grep via GlobMatcher (refs #250, PR #221 1be6ee4) (#258)
  • ranking: add filename stem gating knobs with TDD (#257)
  • vector: filter-during-scan eligibility map and flat scan (#255)

Bug Fixes

  • tests: close remaining flakes from #262/#263 (LAST_HYDRATION_COUNT, cargo_bin, set_var) (#264)
  • cli: recognize the shim by matching what the installer wrote (alternative to #260) (#263)
  • setup: ask Direct3D 12 whether DirectML can run (#259)

Other Changes

  • vector: harden filter-during-scan with typed fallback, scan guard and bulk matcher (#256)

Full Changelog: v1.3.0...v1.3.1

v1.3.0

Choose a tag to compare

@github-actions github-actions released this 01 Sep 11:14
0e2ab8c

Features

  • retrieval: toggleable hypotheses knobs for issue #196 (DEFAULT OFF) (#244)
  • eval: add host CPU model and ranking env provenance with TDD tests (#242)
  • retrieval: toggleable ranking signals for issue #196 with mechanism rationales (#239)
  • cli: streamline Qwen first-run to single key and auto protocol (#237)
  • cli: ship Qwen OpenRouter preset and setup hardening (#236)
  • reranker: protocol/capability model and config plumbing (#230)
  • consumers: update split-symbol consumers to bare+part_index (#226)
  • core: split-symbol identity bare+part_index (#225)
  • indexing: add completeness marker and flock guard for reuse race (#224)
  • eval: ship reuse_index with identity gates (#223)
  • references: record call receivers and filter callers by them

Bug Fixes

  • ci: remove docs paths-ignore so docs-only PRs run validation (#247)
  • cli: correct retrieval.max_output_chars help default to 0 = unlimited (#235)
  • retrieval: harden m4 reranker review findings (#234)
  • progress: harden m3 scrutiny findings (typed cancel, clamp, dedup, tracker reconcile) (#233)
  • core: harden m2 review findings and document VERA_MAX_OUTPUT_CHARS (#232)
  • reranker: pin resilience - permanent 4xx no-retry, capped Retry-After/OpenRouter waits, cancellation, degradation (#231)
  • indexing: honest progress denominator (indeterminate until ParsingDone) (#229)
  • retrieval: filtered-vector loss at retrieval core (#227)
  • retrieval: wait out reranker 429 quota windows when a wait cap is set
  • core: cap query-time reads at max_file_size_bytes, key RST cache on cycle state
  • cli: let doctor diagnose broken configs, probe DirectML, remove cargo binaries
  • glob: memoize the recursive matcher and hint wildcard dir prefixes
  • discovery: stat and sniff through one open handle, loop short reads
  • parsing: canonicalize the include-cycle stack seed

Performance

  • retrieval: deduplicate vector-store open per query (#197) (#245)
  • retrieval: implement #197 latency work with bounded caches and staleness proof (#240)

Other Changes

  • cli,eval: harden Qwen preset identity and harness provenance (#241)

Full Changelog: v1.2.0...v1.3.0

v1.2.0

Choose a tag to compare

@github-actions github-actions released this 26 Aug 10:53

Features

  • embedding: API document prefixes with staleness guard, ROCm and config hardening

Bug Fixes

  • docs: release notes and refreshed benchmark numbers for v1.2.0
  • retrieval: narrow the definition-site gate to fixture paths
  • retrieval: gate content-symbol definition boost by content role
  • security: surface transitive unsound advisories in cargo-deny
  • storage: read-only index opens, batched stats aggregates, honest vector counts
  • cli: doctor blank-env scoring, uninstall exit code, non-TTY agent install
  • mcp,serve: frame size cap, watcher update coalescing, per-repo watchers
  • parsing: fence-aware markdown, Python inheritance, archive-token scoping
  • retrieval: deep-search robustness, BM25 operator sanitizing, reranker shortfall

Performance

  • indexing: overlap parse, embed, and store stages of full builds
  • retrieval: cache the indexed file list across queries
  • indexing: windowed parse-embed-store with staged publish
  • retrieval: paged hydration for the BM25 rejection tail
  • retrieval: hydrate BM25 candidates in paged batches

Other Changes

  • lint: satisfy clippy 1.98 collapsible-if and chunks-exact lints
  • add pull request validation workflow and correct the MSRV
  • core: share index staging suffixes and deduplicate BM25 test

Full Changelog: v1.1.0...v1.2.0

v1.1.0

Choose a tag to compare

@github-actions github-actions released this 24 Aug 11:44

Features

  • local-models: pin revisions, verify digests, multi-shard weights
  • retrieval: make reranking work under the potion backend, default off
  • parsing: attach doc comments to symbol chunks, keep bash dispatchers whole
  • parsing: extract bash case arms as named sub-symbols
  • parsing: extract Lua function-valued assignments as symbols
  • local-models: allow overriding the local reranker via env
  • embedding: make potion-code-16M-v2 the default local backend
  • core: honor pinned revisions for local embedding models
  • cli: offer indexing on first search
  • eval: pin Semble provenance and metric contract
  • eval: configurable model lanes, task slicing, and full provenance (#141)

Bug Fixes

  • security: descriptor-relative source reads via cap-std
  • serve: keep in-flight model loads when the initiator disconnects
  • parsing: bound RST include fan-out, cache expansions
  • cli: align tests with reranking default, show sub-ms stage timings
  • eval: match ground-truth paths by path-boundary suffix
  • cli: repair no longer rewrites backend or reranker state, and trailing-period queries classify correctly
  • core: install rustls provider before blocking prefix fetch
  • cli: reject the structural query routes and sql cannot honour (#137)
  • parsing: stop body-spanning containers swallowing their members (#131)
  • embedding: apply jina-embeddings-v5's Query/Document retrieval prefixes (#95)
  • embedding: pool jina-embeddings-v5 on the last token, not the mean (#94)
  • serve: cache each model per slot instead of rebuilding it per request (#134)
  • mcp: fuse multi-query search results instead of concatenating them (#124)
  • retrieval: break RRF ties on a stable key so results stop varying per process (#127)
  • retrieval: time query embedding and vector search separately (#113)
  • core: re-root git scope paths onto the indexed directory (#138)
  • cli: emit one JSON document from vera uninstall (#128)
  • cli: exit non-zero when vera doctor reports a failing check (#136)
  • indexing: do not follow symlinks out of the repository (#111)
  • mcp: surface a stale-index warning in tool results (#130)
  • core: single-source the Language wire name and honour retrieval.max_rerank_batch (#125)
  • embedding: single-source the CodeRankEmbed query prefix (#129)
  • cli: honour --client and --scope on vera agent sync (#110)
  • parsing: Rust inline mod swallows every symbol inside it (#126)
  • parsing: advance chunk coverage monotonically past nested symbols (#115)
  • indexing: write hashes and the freshness stamp after the stores are rebuilt (#123)
  • retrieval: contain indexed file paths within the project root (#112)
  • retrieval: resolve the reranker provider before acquiring its runtime (#90)
  • docs(parsing): pin the naming convention for dotted JSX components (#88)
  • parsing: select the signature grammar by path, like indexing does (#87)
  • indexing: make update publication cancellation-safe (#83)
  • upgrade: verify the version changed, not that it equals the release tag (#63)
  • indexing: treat unreadable tracked files as stale (#77)
  • retrieval: bound the KNN candidate pool instead of clamping silently (#65)
  • parsing: parse .tsx with the tsx grammar and index JSX call sites (#58)
  • parsing: name const-assigned functions in TS/JS (#59)

Performance

  • storage: exact flat-SIMD vector scan sidecar, sqlite-vec fallback
  • retrieval: reuse search stores across queries
  • retrieval: rerank pooled candidates with coherence, coverage, and definition signals
  • reranker: length-sort local rerank batches to cut padding waste
  • mcp: build the watcher's runtime and provider once, not per debounce cycle (#133)
  • retrieval: build the reranker lazily, only for queries that rerank (#132)
  • cli: let the update cache answer the install method before detecting it (#114)
  • storage: resolve KNN rowids in one query instead of one per hit (#86)
  • indexing: parallelize update path and batch metadata writes/reads (#69) (#73)
  • indexing: delete BM25 documents for all changed files in one pass (#84)
  • storage: seek the index when deleting a file's vectors (#81)
  • storage: index the lower() lookups instead of scanning (#80)

Other Changes

  • deps: tantivy 0.25 -> 0.26.1, MSRV 1.86
  • remove dead code and deduplicate indexing helpers
  • cli: remove runtime config forwarding helper
  • docker: use ephemeral buildx builders and cap Blacksmith job runtime
  • publish the openvino docker image (#61)
  • build ROCm image from digest-verified GHCR base mirror (#55)
  • make buildx prune non-blocking so the daemon retry always runs
  • retry failed docker publishes via the runner docker daemon
  • checkout the requested tag in docker recovery workflow
  • scope docker concurrency per variant, least-privilege permissions
  • reuse release binary for docker images, drop redundant cache
  • size release runners to the macOS baseline, add docker cache repair
  • move musl build to 8vcpu to tighten the wall-clock band
  • balance release runner sizes to equalize build wall-clock
  • serialize docker publishes, pass tag via env instead of template expansion
  • speed up release builds and fix rocm docker publish

Full Changelog: v1.0.1...v1.1.0

v1.0.1

Choose a tag to compare

@github-actions github-actions released this 19 Aug 10:42
66b0bc8

Features

  • Merge pull request #39 from citron07r/fix/index-no-progress
  • cli: add --no-progress to vera index and gate progress on an interactive stderr

Bug Fixes

  • Merge pull request #47 from VeraTools/fix/agent-sync-non-destructive
  • Merge pull request #40 from citron07r/fix/setup-non-interactive
  • Merge pull request #43 from citron07r/fix/upgrade-verify-applied
  • Merge pull request #42 from citron07r/fix/vector-error-context
  • Merge pull request #33 from citron07r/fix/coreml-reranker-cpu-provider
  • cli: quiet auto-sync, CRLF-safe snippet refresh, doc accuracy
  • setup: reject empty API credential env values
  • cli: stop agent sync from overwriting user-edited markdown
  • storage: log KNN clamp and test error chain formatting
  • setup: honor complete API credentials in non-interactive mode
  • upgrade: report unconfirmed upgrades as not applied
  • upgrade: verify the applied version instead of trusting the installer exit code
  • storage: clamp KNN k to the sqlite-vec limit instead of losing vector search
  • setup: make flag-driven setup work without a terminal
  • retrieval: run the reranker on CPU under CoreML

Other Changes

  • add CodeRabbit configuration tuned to project guidelines
  • upgrade: single-source the version-match decision
  • migrate release and docker workflows to Blacksmith runners
  • point repository references at the VeraTools org

Full Changelog: v1.0.0...v1.0.1

v1.0.0

Choose a tag to compare

@github-actions github-actions released this 17 Aug 21:19
8c6239a

Features

  • fix(build): fail loudly when vendored grammars are missing
  • Merge experimental graph augmentation (off by default)
  • retrieval: experimental structural graph augmentation (VERA_GRAPH_AUGMENT)
  • retrieval: rerank path-glob scoped searches
  • parsing: index TS/JS/Java class methods and Java enum methods
  • search: repeatable --path filter, symbol-type aliases
  • reranker: support Voyage rerank endpoints
  • config: support embedding model aliases
  • reranker: prefer API reranking over local when credentials configured
  • Merge pull request #31 from freaksdotcom/bhigh/vera-mcp-cancel
  • Merge pull request #30 from freaksdotcom/bhigh/vera-mcp-progress-reporting
  • update: limit files per run
  • update: report progress
  • serve: add idle-timeout model cache with per-request default
  • serve: cancel in-progress inference when client disconnects
  • serve: add vera serve command with pure inference API
  • retrieval: parallelize hybrid search and strengthen ranking signals
  • retrieval: add BM25 stemming, stronger definition ranking, concept augmentation
  • retrieval: add potion backend and cached search
  • eval: semble benchmark integration, full-pipeline adapters, benchmark_root scoping
  • retrieval: adaptive RRF weighting, identifier BM25, file saturation decay
  • structural: index explicit type relations
  • structural: add agent-oriented search intents
  • search: add git scopes, explain-path, and AST queries

Bug Fixes

  • eval: harden benchmark harnesses against partial runs
  • core: parse git scope paths as NUL-delimited records
  • cli: cancellable indexing and local-setup reranker hygiene
  • serve: load only the needed provider per request
  • local-models: harden model asset and runtime setup
  • indexing: close staleness and removal gaps in incremental updates
  • retrieval: honor cancellation and harden hybrid search
  • retrieval: correct exact-match and query-classification edge cases
  • mcp: correct operation nouns in git-scope schema descriptions
  • benchmarks: drop fake vector-only mode from run_vera_benchmarks
  • eval: fail loudly on adapter errors, guard empty sets, harden agent-bench reruns
  • build: assert vendored grammar scanner.c exists
  • serve: honor return_documents and guard eviction of in-use models
  • mcp: correct search_code and path filter schemas
  • parsing: TS interface methods and type-relation correctness
  • core: git revision validation, update atomicity, exact_paths separators
  • cli: agent snippet truncation, sync refresh gating, backend wizard
  • build: fail loudly when vendored grammars are missing
  • local: validate ONNX model integrity and repair safely
  • indexing: read source files with lossy UTF-8 decoding
  • search: clamp grep byte index to char boundary
  • filters: handle Unicode paths in glob matching
  • Merge pull request #22 from flier268/master
  • Merge pull request #22 from flier268/master
  • Merge pull request #29 from freaksdotcom/bhigh/vera-bounded-inference
  • Merge pull request #25 from citron07r/fix/coreml-reranker-cpu-fallback
  • Merge pull request #27 from citron07r/fix/openai-embedding-token-limit
  • Merge pull request #26 from citron07r/fix/intent-breaks-bm25
  • Merge pull request #28 from citron07r/fix/path-glob-directory-prefix
  • retrieval: prevent scoped BM25 candidate starvation
  • preserve indexing APIs and review edge cases
  • indexing: cancel synchronous pipeline stages
  • indexing: handle cancellation edge cases
  • update: bound and cancel remote work
  • inference: bound abandoned remote work
  • search: match bare directory path globs as directory prefixes
  • embedding: auto-truncate on OpenAI token-limit errors
  • search: keep reranking on for intent searches; borrow in no-intent path
  • search: keep --intent prefix out of BM25 queries
  • local: stop CoreML reranker fp16 CPU fallback
  • serve: fix cancellation gaps in local inference providers
  • serve: prevent empty-key auth bypass and redact internal errors from API responses
  • lint: resolve clippy warnings and fmt violations from vera serve
  • local: recover from onnx provider session failures
  • eval: filter tasks to corpus instead of failing on missing repos
  • retrieval: harden bm25 and local indexing
  • setup: prompt for api credentials
  • resolve type relation generics, structural false negatives, and minor correctness issues
  • eval: keep file-backed runs out of stdout
  • search: tighten structural heuristics and add eval gating
  • search: detect stale indexes and improve exact-match hints
  • agent: keep managed Vera snippets current
  • Merge pull request #18 from maxwellsocial/fix/voyage-ai-batch-limit
  • cli: surface global output flags in help
  • search: preserve generated regex hits and global flags

Performance

  • retrieval: skip rerank when pool has no surplus over result limit
  • local: scale CoreML batch size from unified memory
  • namespace-aware embedding cache key prevents cross-model poisoning (#7)
  • serve: remove unnecessary clones in embeddings and rerank handlers
  • retrieval: trim vector candidate overfetch

Other Changes

  • eval: share search_with/index_with between the two Vera adapters
  • eval: single run_full_adapter helper for the three full-pipeline lanes
  • benchmarks: extract shared metric helpers into bench_common.py
  • benchmarks: prune archival result JSONs, keep v1 full-suite record
  • benchmarks: prune 23MB of archival result JSONs
  • eval: drop unreferenced Stability subcommand
  • indexing: single chunk_file_for_update helper in update.rs
  • mcp: dedup repeated tool schema properties
  • core: share CompactResult and truncate_to_budget via presentation module
  • cli: single AgentClient::META table for variants and names
  • cli: split clap definitions into cli.rs, fix two lints
  • retrieval: extract exact-match augmentation from search_service
  • retrieval: split ranking.rs into query/score modules
  • core: split local_models.rs into focused modules
  • parsing: split extractor.rs into focused modules
  • parsing: merge lisp define extraction behind keyword tables
  • parsing: RawSymbol::at constructor, shared name-kind tables
  • parsing: table-drive node classification, drop debug prints
  • core: env override helper, preset builder, misc small dedups
  • embedding,storage: merge do_embed paths, api_err and collect_rows helpers
  • core: drop dead helpers, use rusqlite OptionalExtension
  • embedding: single concurrent embed path, shared store setup
  • retrieval: share chunk mapping, result key, and content predicates
  • retrieval: remove dead search wrappers, collapse fuse_rrf_multi
  • repo: drop patch artifacts, tracked pycache, spikes, superseded benchmark runs
  • deps: semver-compatible dependency refresh
  • deps: bump crossbeam-epoch for RUSTSEC-2026-0204, drop unused serde_json
  • serve: load embedding and rerank models per-request instead of at startup
  • structural: narrow impl search to Rust traits
  • surface: converge on agent-first search workflows

Full Changelog: v0.12.13...v1.0.0

v0.12.13

Choose a tag to compare

@github-actions github-actions released this 20 Apr 02:49

Bug Fixes

  • cli: surface global output flags in help
  • search: preserve generated regex hits and global flags

Full Changelog: v0.12.12...v0.12.13

v0.12.12

Choose a tag to compare

@github-actions github-actions released this 20 Apr 01:54
f63209b

Bug Fixes

  • local: align CoreML reranker and search filters

Full Changelog: v0.12.11...v0.12.12