fix(mcp): tighten ingest traces schema for strict clients#757
Conversation
Signed-off-by: Dustin Persek <dustin.persek@protonmail.com>
|
Thanks for the strict-client schema fix for #731. Triage: MCP/editor integration compatibility bug. Review will check the generated |
|
Thanks for the precise fix — we verified ingest_traces was the only bare propertyless object schema in the entire TOOLS array, which matches VS complaining exactly there, and your parsed tools/list test is a genuine guard. The declared caller/callee/count fields now become the contract for the future real implementation, which is a nice bonus. Merging — we'll ask the reporter on #731 to verify in VS. |
Summary
ingest_tracesitem fields in the generated MCP schema.traces.items.additionalPropertiestofalsefor strict clients such as Visual Studio Copilot.tools/listregression test covering the nested schema path.Why
Fixes #731.
Visual Studio Copilot rejects
codebase_memory_ingest_tracesbecause the nested trace item object schema does not explicitly setadditionalProperties: false. The schema now closes that object while still advertising the existing trace payload shape:caller,callee, and optionalcount.Tests
build/c/test-runner mcp- passed, 122 tests.git diff --check- passed.make -f Makefile.cbm test- built and ran, but failed outside the MCP path with local listener/offline clone environment failures.make -f Makefile.cbm lint-ci- blocked locally becausecppcheckis not installed.Scope