Files
codebase-memory-mcp/scripts
Andrew Hundt 3a72ee0728 feat(benchmarks): measure MCP surface parity states
Add --mcp-surface-parity to benchmark-incremental-speed.py. The bounded probe starts isolated classic and streamlined MCP processes with CBM_AUTO_INDEX=false, measures tools/list latency and payload size, hashes every input schema, observes notifications/tools/list_changed, and compares streamlined state before and after _hidden_tools reveal.

Probe hidden classic names with empty argument objects to verify dispatcher recognition without indexing or mutating a repository. Report this separately from advertised name/schema parity so handler recognition is not presented as end-to-end behavioral equivalence. Account for get_code versus get_code_snippet property and required-field contracts explicitly.

Installed binary 692b78434d86 produced 4/15 advertised and 15/15 dispatch-recognized classic names before reveal; after reveal it contained all 15 classic names with zero schema-hash mismatches and observed tools/list_changed. The retained JSON is /private/tmp/cbm-mcp-surface-parity-20260715-v3.json and is not committed.

Tests: uv run python -m unittest tests.test_benchmark_campaign tests.test_benchmark_incremental_speed tests.test_summarize_benchmark_results (54 passed)
Static: uv run ruff check scripts/benchmark-incremental-speed.py scripts/summarize-benchmark-results.py tests/test_benchmark_incremental_speed.py tests/test_summarize_benchmark_results.py
Signed-off-by: Andrew Hundt <ATHundt@gmail.com>
2026-07-15 20:34:52 -04:00
..