v0.10.4
Highlights
- Added SCIP ingestion for compiler-grade cross-references, including the
sdl.scip.ingesttool and optionalscip-iopre-refresh generation with auto-install support. - Added graph analytics for ranking and exploration: persisted PageRank/K-core metrics, Louvain shadow clusters, and blast-radius path explanations.
- Expanded resolver and indexing depth across Java, Python, Rust, and Shell, with shared confidence scoring, pass-2 telemetry, and stronger Rust-native pass-1 parity with TS fallback.
- Improved semantic retrieval storage and bootstrap by moving toward fixed-size vector columns and vector-index lifecycle management with structured degradation when capabilities are unavailable.
Fixes and hardening
- Fixed the
serve --stdioshutdown path so transport close events run through the centralized shutdown manager, reducing the risk of dirty LadybugDB shutdowns and WAL corruption on client exit. - Corrected vector-column migration behavior, buffer timestamp coercion, and several tool-response edge cases.
- Addressed a broad set of review findings across SCIP ingestion, policy updates, runtime/build safety, resource handling, and info-path redaction.
- Fixed CI and native build issues around protobuf/clang setup and lockfile drift.
Documentation
- Expanded the architecture, configuration, semantic setup, and SCIP deep-dive documentation.
Full changelog: https://github.com/GlitterKill/sdl-mcp/blob/v0.10.4/CHANGELOG.md