v0.11.0
·
157 commits
to main
since this release
v0.11.0: Server Reuse
--reuse-server flag
Assertions with the same server config now share a single server process and fixture copy. One cold start instead of N.
mcp-assert ci --suite evals/ --reuse-serverOn agent-lsp's 87-test suite: 12 minutes to ~2.5 minutes locally.
How it works:
ServerKey()hashes the server config (command, args, env, transport) for grouping- Assertions in the same group share one MCP client and fixture copy
- Stateful tools (rename_symbol, apply_edit, restart_lsp, activate_skill) are auto-detected and run isolated
- Trajectory assertions and serverless tests are excluded from sharing automatically
- Panic recovery provides defense-in-depth if a shared server dies unexpectedly
Available on run and ci commands. Opt-in, default off.
Fixes
-
Multi-content MCP response handling.
json_pathandmin_max_resultscheckers now handle responses with multiple content items (e.g., a JSON result in Content[0] and a hint in Content[1]). Previously the concatenated text broke JSON parsing. -
Panic recovery in intercept goroutines. Added
defer recover()to intercept proxy goroutines. 38 new tests.
Also
- Updated social preview logo