Skip to content

SEP-2484: Require Conformance Tests for Standards Track SEPs to Reach Final Status#2484

Open
pcarleton wants to merge 4 commits intomainfrom
pcarleton/conformance-requirement-sep
Open

SEP-2484: Require Conformance Tests for Standards Track SEPs to Reach Final Status#2484
pcarleton wants to merge 4 commits intomainfrom
pcarleton/conformance-requirement-sep

Conversation

@pcarleton
Copy link
Copy Markdown
Member

Adds a conformance test requirement to the Accepted → Final transition for Standards Track SEPs.

Summary

Before a Standards Track SEP that changes observable protocol behavior can be marked Final:

  • A conformance scenario tagged with the SEP number must be merged in the conformance repository
  • The scenario must include a structured traceability file (sep-NNNN.yaml) mapping each MUST/MUST NOT to a check or a documented exclusion
  • The sponsor verifies the traceability file is complete

Process and Informational SEPs are exempt, as are Standards Track SEPs with no observable protocol behavior.

Why

SEP-1730's SDK tiering depends on conformance tests, but nothing keeps the suite synchronized with the spec. This ties test creation to the SEP lifecycle so the suite grows exactly as fast as the spec does.

Supersedes

SEP-1627 (Conformance Testing)

Changes

  • seps/0000-*.md — the SEP itself (number will be updated to match this PR)
  • docs/community/sep-guidelines.mdx — adds conformance test gate to the Accepted → Final workflow, updates flowchart and status table
  • Generated docs

@mintlify
Copy link
Copy Markdown

mintlify bot commented Mar 27, 2026

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
mcp-staging 🟢 Ready View Preview Mar 27, 2026, 6:07 PM

**What's required:**

- A conformance scenario tagged with the SEP number, targeting the `draft` spec version
- A structured traceability file (`sep-NNNN.yaml`) mapping each MUST/MUST NOT in the SEP's Specification section to either a check ID or a documented exclusion with a linked tracking issue
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should SHOULD/SHOULD NOT be mapped to a "warning" (not "failure") status?(Maybe a bigger question for the conformance suite at large)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yea, that is how we've been representing them in conformance. I left it out mapping them as a requirement here initially to keep the burden small, but reflecting more now, it makes sense to require mapping them too. They have a burden on implementors, so having it be a burden on SEP writers to test makes sense.


Exclusions come in two flavors. **Framework gaps** (the behavior is observable but the framework can't express it yet) should link a tracking `issue`. **Not protocol-observable** (the requirement governs client rendering, implementation internals, or similar) needs only the `excluded` reason. A SEP whose requirements are all the second kind is exempt and doesn't need a scenario at all.

The sponsor verifies the traceability file is complete: every MUST and MUST NOT (and RFC 2119 equivalents: SHALL, REQUIRED) in the SEP's Specification section has a row. SHOULD and MAY requirements do not need rows, although it is recommended to include SHOULD's a WARNING check. The sponsor does not review test code; that is the conformance repository's normal PR review. What counts as a normative requirement is the sponsor's call.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The sponsor verifies the traceability file is complete: every MUST and MUST NOT (and RFC 2119 equivalents: SHALL, REQUIRED) in the SEP's Specification section has a row. SHOULD and MAY requirements do not need rows, although it is recommended to include SHOULD's a WARNING check. The sponsor does not review test code; that is the conformance repository's normal PR review. What counts as a normative requirement is the sponsor's call.
The sponsor verifies the traceability file is complete: every MUST and MUST NOT (and RFC 2119 equivalents: SHALL, REQUIRED) in the SEP's Specification section has a row. SHOULD and MAY requirements do not need rows, although it is recommended to include SHOULDs as a WARNING check. The sponsor does not review test code; that is the conformance repository's normal PR review. What counts as a normative requirement is the sponsor's call.

Copy link
Copy Markdown
Contributor

@nbarbettini nbarbettini Mar 29, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd be in favor of upgrading recommended to include SHOULDs -> required, since many protocol behaviors end up being SHOULDs. But I am OK leaving this up to the discretion of the author or sponsor.

@pcarleton pcarleton changed the title SEP: Require Conformance Tests for Standards Track SEPs to Reach Final Status SEP-2484: Require Conformance Tests for Standards Track SEPs to Reach Final Status Mar 30, 2026
@pcarleton pcarleton marked this pull request as ready for review March 30, 2026 19:02
@pcarleton pcarleton requested review from a team as code owners March 30, 2026 19:02
@pja-ant
Copy link
Copy Markdown
Contributor

pja-ant commented Apr 8, 2026

I'm supportive of this! Will be a great way to systematize the spec and introducing it into the SEP process is the right place to start doing it.

@pcarleton pcarleton added this to the 2026-06-30-RC milestone Apr 13, 2026
@pcarleton pcarleton self-assigned this Apr 15, 2026
@sep-automation-bot sep-automation-bot bot added draft SEP proposal with a sponsor. and removed proposal SEP proposal without a sponsor. labels Apr 15, 2026
@sep-automation-bot
Copy link
Copy Markdown

State Transition: proposal → draft

This SEP has been transitioned from proposal to draft.

@pcarleton has been assigned as the sponsor for this SEP.


This is an automated message from the SEP lifecycle bot.

@pcarleton pcarleton added in-review SEP proposal ready for review. draft SEP proposal with a sponsor. and removed draft SEP proposal with a sponsor. labels Apr 15, 2026
@dsp-ant dsp-ant added the roadmap/validation Roadmap: Conformance, SDK tiers, reference implementations label Apr 15, 2026
@dsp-ant
Copy link
Copy Markdown
Member

dsp-ant commented Apr 15, 2026

I am in favor of this. My main worry, similar with reference implementations, is tracking that SEPs have it.

@CaitieM20 CaitieM20 moved this to In Review in SEP Review Pipeline Apr 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

draft SEP proposal with a sponsor. in-review SEP proposal ready for review. roadmap/validation Roadmap: Conformance, SDK tiers, reference implementations SEP

Projects

Status: In Review

Development

Successfully merging this pull request may close these issues.

6 participants