fix(sep-2663): use renumbered draft error-code constants in tasks scenarios#356
fix(sep-2663): use renumbered draft error-code constants in tasks scenarios#356panyam wants to merge 1 commit into
Conversation
…narios The tasks extension scenarios hardcoded -32003 (Missing Required Client Capability) and -32001 (Header Mismatch). The draft spec types renumbered these to -32021 and -32020 per modelcontextprotocol#2907, so a server built against current draft.ts now returns the new codes and these checks would produce false failures. Import MISSING_REQUIRED_CLIENT_CAPABILITY and HEADER_MISMATCH from spec-types/draft instead of hardcoding, matching the existing http-standard-headers scenario. The checks now assert whatever the schema currently defines, so a future renumber propagates automatically. Also drop the now-stale code number from the affected check-ID slugs (for example sep-2663-server-returns-32003-when-required becomes sep-2663-server-returns-missing-capability-when-required) and update the sep-2663.yaml requirement text to -32021, keeping it consistent with the already-updated sep-2575 and sep-2243 manifests. Scenarios are still in the pending list so default CI is unaffected. The traceability.json manifest already predates the upstream renumber and is refreshed separately from a full suite run.
commit: |
|
@pcarleton - Please find the the follow up to 262 here (the upgrades on the error codes based on #353). The tasks scenarios now import the renumbered constants ( I also renamed the Ive gone ahead and sanity-checked end to end against my conformant Go SDK server - before the SDK matched the renumber, these scenarios produced 6 failures ( Published conformance report (SEP-2663 row): https://panyam.github.io/mcpkit/conformance/ |
Fast-follow to the tasks-mrtr extension (
#262), addressing post-merge review feedback.Problem
The tasks extension scenarios hardcoded the JSON-RPC error codes
-32003(Missing Required Client Capability) and-32001(Header Mismatch). The draft spec types were since renumbered to-32021and-32020per modelcontextprotocol#2907 (landed in#353). A server built against the currentdraft.tsnow returns the new codes, so these checks would produce false failures against a conformant server.#353updateddraft.ts,sep-2575.yaml, andsep-2243.yaml, but#262had not merged yet, so its tasks files kept the old literals.Change
capability.ts,headers.ts,required-task-error.tsnow importMISSING_REQUIRED_CLIENT_CAPABILITYandHEADER_MISMATCHfromspec-types/draftinstead of hardcoding, matching the existinghttp-standard-headersscenario. The checks assert whatever the schema currently defines, so a future renumber propagates automatically.sep-2663-server-returns-32003-when-requiredbecomessep-2663-server-returns-missing-capability-when-required. This keeps the slug from going stale on any future renumber. Renamed in both the scenario.tsandsep-2663.yaml.sep-2663.yamlrequirement text to-32021, consistent with the already-updatedsep-2575andsep-2243entries.Notes
pendingClientScenariosList, so default CI is unaffected.traceability.jsonis not touched here. It already predates the upstream renumber (it still shows the old-32001/-32003in thesep-2575/sep-2243rows) and is regenerated separately from a full suite run with--results.sep-2663is not yet represented in the manifest.Verification
npm run typecheckcleannpm run lintcleannpm test292 passed