Skip to main content

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