code-kb v1.1.0
Release Notes: code-kb v1.1.0
code-kb v1.1.0 makes better use of the data julie-extract writes. Search and lookup stop returning local variables, related tests come from cross-file call edges, structural facts print their keys, and skeletons report parse errors. It ships julie-extract 3.1.0 inside every release archive. The review behind these changes is docs/plans/018-julie-data-usage-review.md.
What's Changed
1. Search and Lookup Quality
- Local variables and parameters (a
variabledeclared inside a function, method, or constructor) are left out of the full-text index,lookup_symbol, andsearch_symbols. They were 53% of all symbols and filled every result list. Passkind = "variable"to include them; they then match by name. - Search ranks code before documentation headings, so
search_symbols("reconcile offline edits")returns the function first and the markdown headings after it. - An index built by an earlier
code-kbis repopulated once. A stored rule marker inartifact_metadatakeeps every later call free of a table scan.
2. Related Tests
get_symbol_contextfinds tests through pending call edges, the same edgesfind_referencesandblast_radiusalready used. julie resolves call edges inside one file only, so tests in other files were invisible before.- Each test appears once. A test that calls the target many times no longer fills the result limit.
- Markdown code blocks and other documentation rows are never listed as tests, in
get_symbol_contextand inblast_radius. The stem-matched test-file fallback skips documentation files too.
3. Structural Facts
find_structural_factsprints the fact key:mcp_servers.code-kb.commandfor TOML,on.push.branchesfor YAML, the normalized route template for route patterns. It fell back to the capture name before.
4. Index Version Guard
- The guard that rebuilds an index written by another
julie-extractnow also checks the revision that last wrote each file. Ajulie-extract updaterun by a newer binary stamps its version into the metadata but leaves unchanged files' rows as the older binary wrote them; that index is now rebuilt once instead of kept.
5. Diagnostics
file_skeletonprints// N parse errors: symbols may be incompletewhen julie recorded parse diagnostics for the file.codebase_outlineprints the count of files that have no extractor.
6. Extractor: julie-extract 3.1.0
- Fenced code blocks in standalone markdown files no longer carry a test role. An index built by 3.0.0 marked every bare or
rustblock as a test. complexity_metricsandsymbol_annotationsare written only at--level full.code-kbreads neither, so thefactsindex shrinks.- The first tool call after upgrading rebuilds the index once, because the recorded extractor version changes.
Crates.io
code-kb-core 1.1.0 and code-kb-cli 1.1.0 are published. cargo install code-kb-cli builds code-kb only; cargo binstall code-kb-cli fetches the release archive below. Both need julie-extract 3.1.0 from the julie-extractors releases on PATH or in JULIE_EXTRACT_BIN.
Assets & Checksums
Bundled release archives include matching precompiled code-kb and pinned julie-extract (v3.1.0) binaries:
| Archive | Platform | SHA256 Checksum |
|---|---|---|
code-kb-v1.1.0-x86_64-unknown-linux-gnu.tar.gz |
Linux x86_64 | 8b8f40bf3b9937c2c6e46433ad015c22acdb2e153dbf1067a8297c350a1936b6 |
code-kb-v1.1.0-aarch64-apple-darwin.tar.gz |
macOS Apple Silicon | c0b6a0509de9957df8729920eb79c0f04586d1485e6f66585c50fd6cd8e9c1ba |
code-kb-v1.1.0-x86_64-apple-darwin.tar.gz |
macOS Intel | 965be2c4067084f79ca758506257e52d23fa190a37d1d1035120bb82fee1f674 |
code-kb-v1.1.0-x86_64-pc-windows-msvc.zip |
Windows x86_64 | 928b0ba7b7db66ac149a45ed8ee5daaefbfd12aae5d2125da6509a1c4271893e |