Skip to content

Commit 3774e8d

Browse files
committed
ci: repin conformance harness to published 0.2.0-alpha.10
The conformance workflow was temporarily pinned to the pkg.pr.new build of conformance main@da56f663 because the sep-2575 checks asserting the final spec #3002 discover shape (conformance #403) and per-check expected-failures granularity (#406) had not shipped in a published release. 0.2.0-alpha.10 is now on npm and contains both (plus #409, a client request-metadata scenario fix), so point CONFORMANCE_PKG back at the registry and drop the CONFORMANCE_PKG_SHA256 digest and the fetch-and-verify steps that existed only to pin the tarball bytes. All six CI legs (server active/draft/2026/all, client all/2026) pass locally against the published alpha.10 with no baseline changes; the expected-failures comments now name the alpha.10 pin instead of the commit SHA. No-Verification-Needed: CI-config version repin; no runtime surface
1 parent dcd9c1e commit 3774e8d

2 files changed

Lines changed: 3 additions & 44 deletions

File tree

.github/actions/conformance/expected-failures.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
client:
1414
# SEP-1932 (DPoP): the SDK's OAuth client does not implement DPoP proofs.
15-
# These scenarios are new in the da56f663 referee pin. The entries are
15+
# These scenarios are new in the 0.2.0-alpha.10 referee pin. The entries are
1616
# per-check (conformance #406) because both scenarios pass their
1717
# non-DPoP checks (discovery, token acquisition, request flow) live.
1818
- auth/dpop:sep-1932-client-token-request-proof
@@ -25,7 +25,7 @@ client:
2525
- auth/dpop-nonce:sep-1932-client-rs-nonce
2626
# Workload identity federation: the OAuth client does not implement the
2727
# urn:ietf:params:oauth:grant-type:jwt-bearer grant (it answers with
28-
# authorization_code). Also new in the da56f663 referee pin; per-check for
28+
# authorization_code). Also new in the 0.2.0-alpha.10 referee pin; per-check for
2929
# the same reason.
3030
- auth/wif-jwt-bearer:wif-grant-type
3131

.github/workflows/conformance.yml

Lines changed: 1 addition & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -18,20 +18,7 @@ env:
1818
# Use a published version, e.g. @modelcontextprotocol/conformance@0.2.0-alpha.7.
1919
# Bump deliberately and reconcile both
2020
# .github/actions/conformance/expected-failures*.yml files in the same change.
21-
#
22-
# Temporarily pinned to the pkg.pr.new build of conformance main@da56f663,
23-
# which includes #403 (sep-2575 checks flipped to the post-spec-#3002 shape:
24-
# clientInfo optional on requests, serverInfo in result _meta instead of the
25-
# discover body) and #406 (per-check expected-failures granularity) — the
26-
# last published npm release (0.2.0-alpha.9) still enforces the pre-#3002
27-
# shape. Pinned by commit SHA so the tarball cannot move under us;
28-
# CONFORMANCE_PKG_SHA256 pins the bytes and the fetch-and-verify step below
29-
# downloads, checks the digest, and repoints CONFORMANCE_PKG at the
30-
# verified local copy. Repin to the next published @modelcontextprotocol/
31-
# conformance release (>=0.2.0-alpha.10) once it ships, then drop
32-
# CONFORMANCE_PKG_SHA256 and the fetch-and-verify steps.
33-
CONFORMANCE_PKG: "https://pkg.pr.new/@modelcontextprotocol/conformance@da56f663"
34-
CONFORMANCE_PKG_SHA256: "bbc94678033071df4bc9851ce2054f9dff918f4501661d1d60e2d09d8c515e6d"
21+
CONFORMANCE_PKG: "@modelcontextprotocol/conformance@0.2.0-alpha.10"
3522

3623
jobs:
3724
server-conformance:
@@ -47,19 +34,6 @@ jobs:
4734
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
4835
with:
4936
node-version: 24
50-
- name: Fetch and verify conformance harness
51-
# Only when CONFORMANCE_PKG is a URL: download, check the recorded
52-
# sha256, and re-point CONFORMANCE_PKG at the verified local tarball.
53-
# When CONFORMANCE_PKG is a registry spec, this step is a no-op (npm's
54-
# own integrity check applies).
55-
run: |
56-
case "$CONFORMANCE_PKG" in
57-
https://*)
58-
curl -fsSL "$CONFORMANCE_PKG" -o /tmp/conformance.tgz
59-
echo "$CONFORMANCE_PKG_SHA256 /tmp/conformance.tgz" | sha256sum -c -
60-
echo "CONFORMANCE_PKG=file:/tmp/conformance.tgz" >> "$GITHUB_ENV"
61-
;;
62-
esac
6337
- run: uv sync --frozen --all-extras --package mcp-everything-server
6438
- name: Run server conformance (active suite)
6539
run: >-
@@ -119,21 +93,6 @@ jobs:
11993
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
12094
with:
12195
node-version: 24
122-
- name: Fetch and verify conformance harness
123-
# Only when CONFORMANCE_PKG is a URL: download, check the recorded
124-
# sha256, and re-point CONFORMANCE_PKG at the verified local tarball.
125-
# When CONFORMANCE_PKG is a registry spec, this step is a no-op (npm's
126-
# own integrity check applies).
127-
run: |
128-
case "$CONFORMANCE_PKG" in
129-
https://*)
130-
curl -fsSL "$CONFORMANCE_PKG" -o /tmp/conformance.tgz
131-
echo "$CONFORMANCE_PKG_SHA256 /tmp/conformance.tgz" | sha256sum -c -
132-
echo "CONFORMANCE_PKG=file:/tmp/conformance.tgz" >> "$GITHUB_ENV"
133-
;;
134-
esac
135-
# --compile-bytecode: without it, ~40 concurrently spawned interpreters
136-
# race to byte-compile site-packages during the timing-sensitive window.
13796
- run: uv sync --frozen --all-extras --package mcp --compile-bytecode
13897
- name: Pre-compile bytecode (editable sources)
13998
run: uv run --frozen python -m compileall -q src .github/actions/conformance

0 commit comments

Comments
 (0)