v0.26.0
v0.26.0
What's Changed
Added
-
Shared MCP/Pi dispatch layer (#618): All 7 tools now share a single dispatch
implementation intools/_dispatchers.ts. Pi and MCP handlers call the same
dispatcher functions, eliminating the dual-maintenance that caused 8 behavioral
differences in #616.mcp/tools.tsreduced from ~450 lines to ~100 lines. -
MCP-Pi parity contract tests (#619): 19 contract tests verify that Pi and
MCP tool handlers produce identical output for the same input. Covers all 7
tools with key scenarios: known symbols, file paths, error paths, JSON mode,
path traversal rejection, and mutual exclusion. -
Static parity check script (#620):
scripts/check-mcp-parity.shruns 10
grep-based heuristic checks to detect MCP-Pi drift. Wired intoscripts/ci.sh
as a non-blocking warning. -
AGENTS.md sync rule: Change Map now includes "Modifying an existing tool
handler" — when Pi dispatch logic changes, the MCP handler must be mirrored.
Changed
-
Pi tools refactored:
tools/overview.ts,lookup.ts,impact.ts,
verify.ts,changes.ts,format.ts,rename_symbol.tsnow delegate
dispatch logic totools/_dispatchers.ts. -
Tests updated: Source-code pattern checks in
tests/mcp.test.tsnow
verify the dispatcher file instead of the MCP file.
Upgrade
pi install npm:pi-shazam@latestOr for MCP clients:
{ "mcpServers": { "pi-shazam": { "command": "npx", "args": ["-y", "-p", "pi-shazam@latest", "pi-shazam-mcp"] } } }Full Changelog: v0.25.0...v0.26.0