Skip to content

codedb 0.2.5824

Choose a tag to compare

@justrach justrach released this 04 Jun 16:46
· 139 commits to main since this release
e199484

A deterministic code-graph layer, a ~3× faster cold path, and a warm CLI — plus a batch of correctness fixes from a great community audit.

⚡ Performance

  • Snapshot load ~3× — 380 → 125 ms on ~39k files; peak RSS 795 → 457 MB (−338 MB). mmap'd content section, borrowed strings, zero-copy ContentCache, parallel freshness check, no re-hashing on load. (#524)
  • Cold index: RSS 4.3 GB → 1 GB, wall-time ~6.5× — worker-local parallel scan. (#519)
  • Parallel WordIndex build — cold index ~1.49× + leaner ranked search. (#520)
  • Warm CLI daemon: 13–114× per callcodedb <repo> <query> auto-spawns/reuses a per-project warm daemon over a Unix socket instead of cold-reindexing. (#525) — answers @ahndohun's ask in #518 to keep the snapshot warm across CLI calls.
  • Faster fuzzy find — SIMD Smith-Waterman (~1.8×, retrieval-identical) + a ~22× compound-identifier fast path. (#526)

🆕 Features

  • Code-graph layer + graph-aware ranking (+15% MRR, 0.819 → 0.944) — a no-LLM resolved call graph, persisted in the snapshot; centrality folded into ranking, zero recall loss. (#523, #524)
  • Edge-aware codedb_context — now lists callers and callees. (#524)
  • ReScript .res / .resi supportlet/type/module/external/open, decorators stripped. (#533) — requested by @yousafsabir (#532).
  • Windsurf + Devin auto-registration — direct JSON writes from the installer. (#521, #522)
  • CLI hardening — robust arg parsing/validation, correct exit codes, new codedb status, globally-honored --no-telemetry. (#529)

🐛 Correctness & fixes

  • Non-ASCII identifiers (e.g. Korean) now indexed by codedb_outline / codedb_symbol. (#524) — thanks @ahndohun (#518)
  • codedb_find score floor — non-matching queries return "no match" instead of confident bogus hits. (#524) — thanks @ahndohun (#518)
  • Python class is labeled class, not struct_def. (#524) — thanks @ahndohun (#518)
  • Snapshot writer u16 name-length overflow that could panic on very long identifiers — fixed. (#525)
  • Secret-filter drift guard + per-session edit locks from the #528 capability audit, with a runtime lock test. (#530)

🙏 Thanks

  • @ahndohun — a thorough correctness/UX audit (#518): non-ASCII identifiers, the find score floor, Python class kind, and the warm-CLI-daemon ask.
  • @yousafsabir — the ReScript language request (#532).
  • @eramax — the opencode-subagent report (#516), which prompted verifying subagent MCP access and the CLI fallback path.

Install / update

codedb update
# or
curl -fsSL https://codedb.codegraff.com/install.sh | bash

macOS (codesigned + notarized) and Linux x86_64 / arm64. SHA256 checksums included.

Full details in CHANGELOG.md.