feat: add ruby-sdk to the known SDKs registry - #457
Open
koic wants to merge 1 commit into
Open
Conversation
Registers modelcontextprotocol/ruby-sdk in KNOWN_SDKS so `tier-check --sdk-path` and `sdk ruby-sdk` manage the build and per-revision runs themselves, instead of requiring the --conformance-server-url/--client-cmd fallback for unknown SDKs. This is the registry path the Ruby SDK's SEP-1730 Tier 1 application (modelcontextprotocol/modelcontextprotocol#3247) was scored through: with the entry in place, reviewers can reproduce the submission with a single `tier-check --sdk-path <checkout> --requirements 2025-11-25,2026-07-28`, the same way every other registered SDK is checked. The entry drives the same fixtures the SDK's own CI runs through `rake conformance`: `conformance/server.rb` behind the `conformance_server` rake task (PORT from the environment; PORT=3000 matches the registry's port convention) and `conformance/client.rb`, which reads MCP_CONFORMANCE_SCENARIO from the environment and the server URL from argv, per the runner's contract. The baseline is `conformance/expected_failures.yml`. One dual-era server serves every revision from the same /mcp endpoint (stateful dated-spec handshake and the SEP-2575 stateless lifecycle side by side), so the entry needs no specOverrides. Testing: `npm test` (525 passing, including a new known-sdks entry test), `npm run check`, and `npm run build` pass. The entry has already carried four full end-to-end audit runs: the 2026-08-14 and 2026-08-15 tier-check runs against a local ruby-sdk checkout (`--sdk-path` with `--requirements 2025-11-25,2026-07-28`) each built the SDK, started the server on PORT=3000, and completed both legs at both revisions, producing the 67/67 server and 50/50 client results submitted in modelcontextprotocol/modelcontextprotocol#3247. Individually, `sdk ruby-sdk --path <checkout> --mode server --requirements 2025-11-25` exits 0 with 78/78 checks, and `--mode client --requirements 2025-11-25` exits 0 with every scored scenario passing (failures confined to not_scored extensions).
commit: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Registers modelcontextprotocol/ruby-sdk in KNOWN_SDKS so
tier-check --sdk-pathandsdk ruby-sdkmanage the build and per-revision runs themselves, instead of requiring the --conformance-server-url/--client-cmd fallback for unknown SDKs. This is the registry path the Ruby SDK's SEP-1730 Tier 1 application (modelcontextprotocol/modelcontextprotocol#3247) was scored through: with the entry in place, reviewers can reproduce the submission with a singletier-check --sdk-path <checkout> --requirements 2025-11-25,2026-07-28, the same way every other registered SDK is checked.The entry drives the same fixtures the SDK's own CI runs through
rake conformance:conformance/server.rbbehind theconformance_serverrake task (PORT from the environment; PORT=3000 matches the registry's port convention) andconformance/client.rb, which reads MCP_CONFORMANCE_SCENARIO from the environment and the server URL from argv, per the runner's contract. The baseline isconformance/expected_failures.yml. One dual-era server serves every revision from the same /mcp endpoint (stateful dated-spec handshake and the SEP-2575 stateless lifecycle side by side), so the entry needs no specOverrides.Testing:
npm test(525 passing, including a new known-sdks entry test),npm run check, andnpm run buildpass. The entry has already carried four full end-to-end audit runs: the 2026-08-14 and 2026-08-15 tier-check runs against a local ruby-sdk checkout (--sdk-pathwith--requirements 2025-11-25,2026-07-28) each built the SDK, started the server on PORT=3000, and completed both legs at both revisions, producing the 67/67 server and 50/50 client results submitted in modelcontextprotocol/modelcontextprotocol#3247. Individually,sdk ruby-sdk --path <checkout> --mode server --requirements 2025-11-25exits 0 with 78/78 checks, and--mode client --requirements 2025-11-25exits 0 with every scored scenario passing (failures confined to not_scored extensions).