Skip to content

code-kb v1.1.0

Choose a tag to compare

@github-actions github-actions released this 18 Sep 19:58
· 47 commits to main since this release

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 variable declared inside a function, method, or constructor) are left out of the full-text index, lookup_symbol, and search_symbols. They were 53% of all symbols and filled every result list. Pass kind = "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-kb is repopulated once. A stored rule marker in artifact_metadata keeps every later call free of a table scan.

2. Related Tests

  • get_symbol_context finds tests through pending call edges, the same edges find_references and blast_radius already 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_context and in blast_radius. The stem-matched test-file fallback skips documentation files too.

3. Structural Facts

  • find_structural_facts prints the fact key: mcp_servers.code-kb.command for TOML, on.push.branches for 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-extract now also checks the revision that last wrote each file. A julie-extract update run 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_skeleton prints // N parse errors: symbols may be incomplete when julie recorded parse diagnostics for the file.
  • codebase_outline prints 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 rust block as a test.
  • complexity_metrics and symbol_annotations are written only at --level full. code-kb reads neither, so the facts index 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