Skip to content

Releases: Helweg/open-codebase-index

v0.23.0

Choose a tag to compare

@github-actions github-actions released this 11 Aug 12:57
1db0956

What changed

🚀 Features

🐛 Fixes

  • fix: avoid slow watcher startup on large worktrees (#278) @Helweg
  • fix: reconcile external config changes after watcher ready (#277) @Helweg
  • fix: preserve native watcher content rewrites (#275) @Helweg
  • fix: make watcher capability probe observational (#273) @Helweg
  • fix: harden watcher snapshot reconciliation (#272) @Helweg
  • fix: handle MCP shutdown signals during startup (#271) @Helweg

⚡ Performance

  • feat: add experimental low-descriptor watcher (#269) @Helweg

🧰 Maintenance

📚 Documentation

  • docs: document watcher hardening (#274) @Helweg
  • test: harden mixed-intent retrieval benchmark (#266) @Helweg
  • test: expand frozen cross-repo benchmark to mixed intent (#265) @Helweg

🧪 Tests

  • test: harden mixed-intent retrieval benchmark (#266) @Helweg
  • test: expand frozen cross-repo benchmark to mixed intent (#265) @Helweg

Release checks

  • Draft notes reconciled against the full previous release tag diff (for example git log --oneline <previous-tag>..HEAD)
  • CHANGELOG.md updated
  • package.json version bumped
  • npm run build && npm run typecheck && npm run lint && npm run test:run passed

v0.22.5

Choose a tag to compare

@Helweg Helweg released this 09 Aug 13:00
9c7642f

Added

  • Opt-in fixed-version codebase-memory-mcp comparator for cross-repository benchmarks.
  • Frozen 25-query benchmark cohort across JavaScript, Python, Go, and Rust, with documented three-way pilot results.

Fixed

  • Deterministic module-aware ordering for duplicate exact definition names.
  • Strict validation for complete --dataset-dir benchmark inputs.
  • Comparator source-copy isolation and safe handling of file-level comparator results.
  • Host plugin manifests now match the release version.

See CHANGELOG.md for details.

v0.22.4

Choose a tag to compare

@Helweg Helweg released this 07 Aug 08:12
fe0df71

What's Changed

  • feat: add fair CodeGraph benchmark comparator by @Helweg in #245
  • fix: prevent invalid CodeGraph definition comparisons by @Helweg in #246
  • fix: align definition benchmark scope with source intent by @Helweg in #247
  • fix: preserve exact definition context order by @Helweg in #249
  • fix: exclude documentation definition candidates by @Helweg in #250
  • fix: omit non-comparable CodeGraph latency by @Helweg in #251
  • feat: expose codebase context diagnostics by @Helweg in #253
  • docs: describe codebase context diagnostics by @Helweg in #254
  • fix: resolve open dependency vulnerabilities by @Helweg in #255
  • feat: complete pre-edit context evaluation gate by @Helweg in #256
  • feat(eval): cover unresolved-symbol fallback in pre-edit gate by @Helweg in #257
  • fix(eval): enforce pre-edit fallback route assertions by @Helweg in #258
  • fix: stabilize community performance CI and metadata staging by @Helweg in #259
  • fix(ci): update actions to Node 24 runtime by @Helweg in #260
  • chore(release): prepare v0.22.4 by @Helweg in #261

Full Changelog: v0.22.3...v0.22.4

v0.22.3

Choose a tag to compare

@Helweg Helweg released this 02 Aug 20:41
024aff9

Changed

  • Completed canonical host-neutral identity cleanup across user-facing defaults and build artifacts while preserving legacy package, binary, manifest, storage, and dual-publication compatibility.

Fixed

  • Hardened watcher readiness and filesystem integration tests against CI timing variance.
  • Stabilized the 10k-node community performance gate using a sub-second warm median with bounded cold and outlier budgets.

Full changelog: v0.22.2...v0.22.3

v0.22.2

Choose a tag to compare

@Helweg Helweg released this 02 Aug 13:27
ce13da4

Changed

  • Prepared release metadata to follow the active GitHub repository identity.
  • Renamed the canonical repository to Helweg/open-codebase-index.
  • Updated package metadata, host manifests, badges, installation commands, security links, troubleshooting links, and changelog comparisons.
  • Preserved legacy npm package, MCP binary, storage, native artifact, and public tool compatibility.

v0.22.1

Choose a tag to compare

@github-actions github-actions released this 01 Aug 21:39
85692ec

Added

  • Two-tier retrieval quality gates: Added a daily focused Ollama smoke evaluation and a weekly full-repository representative evaluation spanning TypeScript, Rust, Swift, and PHP, with manual tier selection, separate artifacts, and dataset-specific absolute budgets.

Changed

  • Faster real-provider evaluation: Scoped the four-query scheduled Ollama smoke gate to the relevant indexer, OpenCode adapter, and configuration source areas, retaining real semantic competition and all expected files while avoiding full-repository embedding on CPU-only GitHub runners.

Fixed

  • Evaluation quality gate: Replaced the retired GitHub Models fallback with a pinned local Ollama provider, refreshed stale smoke-dataset paths after the adapter and ranking refactors, explicitly scoped scheduled runs to the smoke dataset, and fail fast when CI reindexing produces no searchable vectors instead of reporting a misleading zero-quality score.
  • Stabilized the linked-worktree config creation test under full-suite CPU contention without changing runtime behavior.

Validation

  • Full build, typecheck, lint, and 1,328 tests passed.
  • Packed clean-install smoke tests passed for open-codebase-index and opencode-codebase-index, including both MCP binary names.
  • GitHub-hosted full-repository eval passed at Hit@5 84.62%, MRR@10 0.5987, and p95 105.778 ms.

v0.22.0

Choose a tag to compare

@github-actions github-actions released this 01 Aug 15:27
c3376c0

Highlights

  • Added the portable code_communities graph-analysis tool across OpenCode, MCP, and Pi.
  • Added deterministic cross-community coupling diagnostics with filtering, limits, and representative symbol relationships.
  • Added opt-in, branch-aware community ranking for exact symbol retrieval.
  • Added a direct index CLI subcommand for both MCP binary identities.
  • Bounded file-level indexing memory with transactional publication, queue backpressure, and streaming failed-embedding state.

Performance

The checked-in v0.22.0 comparison uses three interleaved general benchmark samples per version and three sequential indexing-memory samples.

  • Peak indexing RSS: 387.3 MiB → 328.3 MiB, 15.2% lower.
  • Indexing duration: 13,111 ms → 12,873 ms, 1.8% faster.
  • Published-output and embedding-request digests remained identical.
  • General tree-sitter, usearch, BM25, and SQLite performance remained broadly consistent with v0.21.0.

See docs/benchmarks/v0.22.0-vs-v0.21.0.md for methodology and representative results.

Compatibility

  • open-codebase-index remains the preferred package.
  • opencode-codebase-index and opencode-codebase-index-mcp remain supported.
  • Native artifact names, public tool contracts, storage paths, and persisted index formats remain compatible.

Validation

  • Full build, typecheck, and lint passed.
  • All 1,322 tests passed.
  • Dual-package clean-install smoke tests passed for both MCP binary identities.
  • Cross-platform path semantics and CodeQL checks passed.

Full changelog: v0.21.0...v0.22.0

v0.21.0 - Host-neutral package identity

Choose a tag to compare

@github-actions github-actions released this 30 Jul 11:52
022af30

What's New

Host-neutral package identity

open-codebase-index is now the preferred npm package. It ships the same implementation as opencode-codebase-index and exposes both open-codebase-index-mcp and opencode-codebase-index-mcp for compatibility.

The existing opencode-codebase-index package remains fully supported and continues to publish from the same release.

Portable project indexes

Project-owned paths are stored relative to the project root. Git worktrees that inherit project configuration can share the main checkout's index and reuse unchanged chunks and embeddings. Explicit worktree-local project configuration remains isolated.

Existing project indexes containing absolute stored paths require a one-time force rebuild.

Host-neutral architecture

OpenCode, MCP, and Pi registration now live behind dedicated adapters. Portable tool names are centralized, MCP CLI runtime is isolated behind its adapter, and host-dependent runtime paths require explicit host context. Existing tool names, schemas, outputs, and host-specific aliases are unchanged.

Compatibility-aware releases

Release automation stages metadata and manifests independently for both npm package identities, preserves native artifact names, and safely skips versions already published during retries.

Compatibility

  • Existing opencode-codebase-index installs continue to work.
  • Existing opencode-codebase-index-mcp commands continue to work.
  • Storage paths, native artifact names, MCP server identity, and tool names are unchanged.
  • New installations should prefer open-codebase-index.

Validation

  • TypeScript and native builds
  • Type checking and linting
  • 1,273 Vitest tests
  • 116 Rust tests
  • macOS arm64/x64, Linux arm64/x64, and Windows x64 native builds
  • Matching package inventories and both MCP binary aliases

v0.20.1

Choose a tag to compare

@github-actions github-actions released this 29 Jul 14:23
d68f88f

What changed

🧰 Maintenance

  • refactor: extract tool operation runtime (#208) @Helweg
  • refactor: extract context pack utilities (#207) @Helweg
  • refactor: extract Git branch resolution (#206) @Helweg
  • refactor: extract context search resolution (#205) @Helweg
  • refactor: extract native Database bindings (#204) @Helweg
  • refactor: extract native call graph persistence (#203) @Helweg
  • refactor: extract definition ranking helpers (#201) @Helweg
  • refactor: extract embedding batch helpers (#200) @Helweg
  • refactor: extract Indexer search ranking (#198) @Helweg
  • refactor: share MCP and OpenCode tool contracts (#197) @Helweg
  • refactor: modularize native TypeScript wrappers (#196) @Helweg

📚 Documentation

  • docs: refresh final architecture boundaries (#209) @Helweg
  • docs: reorganize README and references (#199) @Helweg

🧪 Tests

Release checks

  • Draft notes reconciled against the full previous release tag diff (for example git log --oneline <previous-tag>..HEAD)
  • CHANGELOG.md updated
  • package.json version bumped
  • npm run build && npm run typecheck && npm run lint && npm run test:run passed

v0.20.0 - Retrieval quality and battery-aware indexing

Choose a tag to compare

@github-actions github-actions released this 28 Jul 12:43
873182f

What's new

Battery-aware background indexing

Automatic startup and watcher indexing can now pause while a Mac is running on battery through the opt-in indexing.pauseBackgroundIndexingOnBattery setting. Pending work is coalesced and manual indexing remains available. Thanks to @Nicolas-nwb for the original contribution.

Stronger retrieval quality

  • Exact definition and implementation searches rescue authoritative symbols omitted by per-file semantic chunk caps, without increasing embedding volume.
  • Nested declarations are cataloged independently of semantic chunk limits, improving lookup for methods in large classes.
  • Conceptual context packs prioritize implementation sources while preserving requested documentation, test, and fixture intent.
  • Broader repository-task routing hints use bounded codebase_context guidance without repeating on tool loops.

Trustworthy quality measurement

  • Added a representative graded benchmark across TypeScript, Rust, Swift, and PHP with route, outcome, recovery, difficulty, filtering, and symbol-aware evidence.
  • Added privacy-safe per-route effectiveness diagnostics and retained scheduled evaluation artifacts.
  • Raised scheduled quality floors so meaningful retrieval regressions fail CI.

Reliability and maintenance

  • Routine branch switching is silent unless branch debug logging is explicitly enabled.
  • Evaluation diagnostics upload on successful and failed runs.
  • GitHub Actions now use immutable Node.js 24 releases and Release Drafter uses its current configuration model.
  • Patched the PostCSS path traversal advisory and the safely overridable brace-expansion dependency.

Validation

The release passed the complete build, typecheck, lint, package smoke test, CodeQL analysis, and all 1,217 automated tests.

Full changelog: v0.19.1...v0.20.0