conformance/src/validation
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Paul Carleton 5cc567c399
Fix wire-validation attribution bugs and extend the schema erratum to 2025-06-18 (#421)
Follow-ups from the #399 review:

- Stateless mock: validate error replies with a placeholder id so the
  JSON-RPC-mandated id:null is not recorded as a harness violation, and
  skip inbound validation when express left the body unparsed (wrong or
  missing Content-Type) — both were false positives blamed on the wrong
  party. Same unparsed-body guard in the stateful mock.
- Stateful mock: validate client traffic against the protocol version
  the client declares via MCP-Protocol-Version, falling back to
  2025-03-26 when the header is absent (it only exists from 2025-06-18,
  whose spec says to assume 2025-03-26), instead of always using the
  run version.
- sdk-client: validate batches once as a whole array instead of also
  per element, which double-recorded every violation.
- Make specVersion required on connectToServer/connectStateful/
  createServerStateful; add isSpecVersion to types.ts.
- Extend the NumberSchema erratum to 2025-06-18 (same generator bug on
  minimum/maximum, modelcontextprotocol#3139) and add a tripwire test
  that forces erratum deletion once the schemas are re-vendored.
- Document the wire-schema-valid / wire-schema-harness-error check IDs
  in the README.
2026-07-27 20:32:17 +01:00
..
vitest-hooks.ts Validate all wire messages against the per-version spec JSON schema (#399) 2026-07-27 15:58:43 +01:00
wire-schema.test.ts Fix wire-validation attribution bugs and extend the schema erratum to 2025-06-18 (#421) 2026-07-27 20:32:17 +01:00
wire-schema.ts Fix wire-validation attribution bugs and extend the schema erratum to 2025-06-18 (#421) 2026-07-27 20:32:17 +01:00