Commit 611dbaf
committed
Extend the interaction suite to the 2026-07-28 spec
Take tests/interaction/ from its 2025-11-25 baseline to the 2026-07-28
revision, keeping the suite's rule that every manifest entry is backed by a
high-level, public-API scenario test.
Manifest groundwork on the existing entries: dead 2026 source URLs repointed
at live sections, ids aligned with the typescript-sdk e2e vocabulary,
over-claiming behaviour strings narrowed to what their tests prove, and the
era pass: behaviours the new revision retired carry removed_in, their
replacements carry added_in, and the pairs are linked supersedes /
superseded_by (enforced bidirectionally by the coverage gate at import), so
no test body branches on a version literal.
New coverage, all driven through Client against a server declared inside the
test and run across the transport x spec-version matrix where the behaviour
allows: multi round-trip requests end to end (the input_required round trip,
requestState echo, omission, opacity and the default sealing that rejects a
tampered or replayed token, parallel-call isolation, multi-round completion
and bounds, all three origin methods, and the MCPServer authoring surface:
Resolve with Elicit, Sample and ListRoots dependencies plus input_required
pass-through for resources and prompts); the 2026 message-direction rules;
server/discover, version modes and the -32022 retry; the per-request
envelope; the modern streamable-HTTP entry (response modes, lazy SSE
upgrade, the header-validation ladder, cacheable stamping); the x-mcp-header
pipeline in both directions; response caching hints; subscriptions/listen
(typed events per kind, acknowledgment stamping, per-stream filtering,
concurrent demultiplexing, the capacity guard, MCPServer change
notifications); stdio serving both eras from the same server; OAuth
negotiating the modern era after authenticating, RFC 9207 iss validation,
step-up bounds and refresh rotation; resultType handling; JSON Schema
2020-12 output validation; and the era method gate.
Where the SDK's current behaviour differs from the spec the test pins today's
behaviour and the entry records the divergence with the re-pin instruction
in the test docstring. Deferred entries are limited to behaviour the SDK
cannot express through its public API, each with a one-line reason.
No-Verification-Needed: test-only change1 parent d2290ca commit 611dbaf
36 files changed
Lines changed: 5976 additions & 474 deletions
File tree
- tests
- interaction
- auth
- lowlevel
- mcpserver
- transports
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | | - | |
10 | | - | |
| 9 | + | |
| 10 | + | |
11 | 11 | | |
12 | | - | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
13 | 16 | | |
14 | 17 | | |
15 | 18 | | |
| |||
29 | 32 | | |
30 | 33 | | |
31 | 34 | | |
32 | | - | |
33 | | - | |
| 35 | + | |
| 36 | + | |
34 | 37 | | |
35 | 38 | | |
36 | 39 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
40 | 40 | | |
41 | 41 | | |
42 | 42 | | |
43 | | - | |
| 43 | + | |
44 | 44 | | |
45 | 45 | | |
46 | 46 | | |
| |||
64 | 64 | | |
65 | 65 | | |
66 | 66 | | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
67 | 73 | | |
68 | 74 | | |
69 | 75 | | |
| |||
166 | 172 | | |
167 | 173 | | |
168 | 174 | | |
169 | | - | |
170 | | - | |
171 | | - | |
172 | | - | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
173 | 180 | | |
174 | 181 | | |
175 | 182 | | |
176 | 183 | | |
177 | 184 | | |
178 | 185 | | |
179 | 186 | | |
180 | | - | |
181 | | - | |
182 | | - | |
| 187 | + | |
183 | 188 | | |
184 | 189 | | |
185 | 190 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
30 | 30 | | |
31 | 31 | | |
32 | 32 | | |
33 | | - | |
| 33 | + | |
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
| |||
237 | 237 | | |
238 | 238 | | |
239 | 239 | | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
240 | 243 | | |
241 | 244 | | |
242 | 245 | | |
| |||
247 | 250 | | |
248 | 251 | | |
249 | 252 | | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
250 | 257 | | |
251 | 258 | | |
252 | 259 | | |
253 | 260 | | |
254 | | - | |
255 | | - | |
256 | | - | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
257 | 264 | | |
258 | 265 | | |
259 | 266 | | |
| |||
397 | 404 | | |
398 | 405 | | |
399 | 406 | | |
400 | | - | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
401 | 410 | | |
402 | 411 | | |
403 | 412 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
4 | | - | |
| 3 | + | |
| 4 | + | |
5 | 5 | | |
6 | 6 | | |
| 7 | + | |
7 | 8 | | |
| 9 | + | |
8 | 10 | | |
9 | 11 | | |
| 12 | + | |
10 | 13 | | |
11 | 14 | | |
12 | 15 | | |
| 16 | + | |
13 | 17 | | |
14 | 18 | | |
15 | 19 | | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
16 | 36 | | |
17 | 37 | | |
18 | 38 | | |
| |||
0 commit comments