Release notes
User-facing changes per release, newest first. Generated from the release tags (only
feat/fix/perf and breaking changes are listed; docs, refactors, tests and chores are
omitted). The release process is in Releasing; do not hand-edit this page.
v0.5.0 — 2026-08-06
✨ Features
- document_outline reads live buffers and narrows to what you asked for (#295)
- find_usages surfaces case-class construction, copy and accessor sites (#294)
v0.4.4 — 2026-08-02
🐛 Fixes
- never serve a stale or silently incomplete index, and never let one request kill the server (#293)
v0.4.3 — 2026-07-25
✨ Features
- enforce Scala semantic tools with a Claude Code guard hook (#282)
🐛 Fixes
- core: allow .semanticdb directory when loading semanticdb files (#280)
v0.4.2 — 2026-07-17
🐛 Fixes
- use SonatypeCentralPublishModule/publishAll for publishing (#279)
v0.4.1 — 2026-07-17
🐛 Fixes
- set stagingRelease false for Sonatype Central portal compat gateway (#278)
v0.4.0 — 2026-07-17
✨ Features
- setup Mill publishing to Sonatype Central and re-enable CI job (#274)
- clarify annotated source elaborations (#261)
- rework tool examples docs
- add source_around_position tool (#255)
- add contextLines to find_usages, search_text, and batch_rename_plan tools (#254)
- find_overloads includes inherited overloads from parents (#252)
- smart_code_duplications can show highlighted source (#250)
- rework tool examples docs (#248)
- structure tool emits mermaid module graph (#249)
- implement test regression prevention checks (#247)
- implement test regression prevention checks (#245)
- docs: tabbed annotated_source examples with intra-line insert tint (#244)
- mcp: add format=diff to annotated_source (#243)
- mcp: name summoned givens and explode wildcard imports in annotated_source (#242)
- docs: mdoc-driven tool-examples with real, self-verifying output (#230)
- ensure E2E smoke test runs from any working directory (#223)
- add E2E command-line smoke test and wire it to prePush (#222)
- add automated E2E launcher smoke tests for classpath resolution (#221)
- add build-tool-native classpath refresh integration for sbt, Mill, and Scala CLI (#220)
- add compare_grep script and metrics documentation
- add rewriteToScala3Style Mill task, rewrite analysis module to native style
- drop sbt-plugin module, auto-detect SemanticDB across build tools, hint on empty index
- add checksum-verified corpus fetch task
- add idempotent setup subcommand to scalasemantic-mcp.sh/.ps1 (#196)
- run MCP script server via in-script scala-cli dependency (#195)
- pc: bracket PresentationCompilerBackend lifecycle and migrate consumers (#140, #141) (#163)
- resume interrupted agent flows (#160)
- implement value_flow BFS tool for tracing value propagation (#125)
- overhaul multi-agent orchestration — full task lifecycle, merge queue, dependency graph, dry-run, agy MCP, broad permissions (#123)
- formally verify analysis contracts with Stainless and gate it in CI (#102)
- mcp: add method_call_hierarchy tool (#74) (#84)
- implement smart code duplication analyzer tool (#64)
- add support for Antigravity CLI/IDE configuration and rules generation (#61)
- sbt-plugin: auto-generate steering rules files (#56) (#58)
- validate analysis tool inputs (#53)
🐛 Fixes
- execute docs.run task correctly in prePush and set UTF-8 encoding (#277)
- docs: dedupe mdoc val definitions in tool-examples.md (#269)
- mcp: detect stale index and add refresh_workspace tool (#268)
- stabilize docs mdx rename
- repair docs site links
- regenerate unit regression manifest for file-path arg tests (#256)
- regenerate regression manifest for symbol_source tool (#253)
- mcp: anchor annotated_source terse notes to the call, name summoned givens by type (#240)
- test: scope docs golden tests to the docExamples-only index
- docs: resolve scalameta classpath conflict, golden-lock doc examples
- batch tool-description lookups into one subprocess call (#238)
- pretty-print mutation reports (#228)
- ci: skip mutation report commits on PR runs (#227)
- ci: restore stryker overlay module ids (#226)
- docs: remove deleted research plan from Docusaurus sidebar (#224)
- mutation: fix stryker4s report path after --base-dir change (#219)
- mutation: resolve mcp stryker4s InitialTestRunFailedException (#218)
- embed awk config-merge programs in scalasemantic-mcp.sh
- restore scala-cli command in generated MCP client config argv
- ignore disappearing semanticdb artifacts (#190)
- ci: fix scalafmt formatting in CompatSuite
- keep mcp client logging disabled by default (#172)
- use visible symlink for agy --add-dir to avoid hidden .worktrees path rejection (#124)
- resolve SLF4J StaticLoggerBinder warnings on sbt startup (#122)
- wrap PresentationCompilerBackend in AutoCloseable try-finally to ensure shutdown (#119)
- remove default logging from sbt plugin (#117)
- revert scripted-sbt_2.13 axes — scripted-sbt_2.13 never published on Maven (#110)
- resolve scripted-sbt_2.13 resolution failure on sbt 2.0.1 (#109)
- robust SemanticIndex traversal against concurrent mutations (#103)
- exclude nested classes from structure cycle detection (DependencyGraphs) (#99)
- validate package symbols; remove dead code found by mutation testing (#75)
⚡ Performance
- launch MCP server via direct scala-cli dependency, skip script
v0.3.10 — 2026-06-24
Maintenance release — no user-facing changes.
v0.3.9 — 2026-06-24
Maintenance release — no user-facing changes.
v0.3.8 — 2026-06-24
✨ Features
- mcp: move_plan and extract_method_plan refactoring tools (#36)
- sbt-plugin: mcpClientConfig writes + merges config into project-local files (#34)
⚡ Performance
- optimize ProGuard rules for maximal JAR shrinking (#35)
v0.3.7 — 2026-06-23
✨ Features
- mcp: add annotated_source — read a Scala file with compiler insertions made explicit (#29)
v0.3.6 — 2026-06-23
✨ Features
- serve cached MCP server instantly + background self-update; prefetch on mcpClientConfig (#26)
🐛 Fixes
- resumable launcher download, --prefetch, and opt-in logging (#25)
v0.3.5 — 2026-06-22
✨ Features
- mcp: log to file instead of stderr (#24)
v0.3.4 — 2026-06-22
✨ Features
- warn when no SemanticDB exists yet on mcpClientConfig (#20)
🐛 Fixes
- mcpClientConfig prints config without forcing a compile (#19)
v0.3.3 — 2026-06-20
✨ Features
- mcp: per-call debug logging to stderr (#16)
v0.3.2 — 2026-06-20
✨ Features
- tools: document_outline + rename_plan (usage-study-driven) (#14)
v0.3.1 — 2026-06-20
✨ Features
- structure: Phase 4 — badge find_symbol/class_hierarchy with metrics (#12)
v0.3.0 — 2026-06-19
✨ Features
- structure: Phase 3 PageRank centrality + module coupling surface (#9)
- structure: Phase 2 layering — longest-path level on the condensed DAG (#8)
- structure: Phase 1 dependency metrics tool (Ca/Ce/instability + cycles) (#7)
v0.2.1 — 2026-06-19
✨ Features
- mcp: sharpen tool + server descriptions for better tool selection (#3)
🐛 Fixes
- assembly: dedup compiler classes the pc module drags into the fat jar
v0.2.0 — 2026-06-19
✨ Features
- pc: presentation-compiler second backend for live, uncompiled buffers
v0.1.6 — 2026-06-19
✨ Features
- analysis: add path/kind/exact filters, section selection, and occurrence dedup
- seo: Docusaurus social card, JSON-LD, sitemap, robots, keywords metadata
- BuildInfo version + mdoc/Docusaurus microsite; quickstart prioritizes sbt plugin
- cross-version compat tests, find_symbol + instructions, stable install
v0.1.5 — 2026-06-19
✨ Features
- plugin: self-bootstrapping launch + coursier-first scripts
- standalone fat jar + GitHub Release + auto-download launchers
v0.1.4 — 2026-06-18
Maintenance release — no user-facing changes.
v0.1.3 — 2026-06-18
Maintenance release — no user-facing changes.
v0.1.2 — 2026-06-18
Maintenance release — no user-facing changes.
v0.1.1 — 2026-06-18
Maintenance release — no user-facing changes.
v0.1.0 — 2026-06-18
🐛 Fixes
- scripts: tolerate no-tags case in version lookup