Skip to content

ci: add mcp-interface-diff.yml as a dispatch-only placeholder (staged rename, Step 1) - #5528

Merged
cliffhall merged 1 commit into
v2/mainfrom
v2/chore/5463-mcp-interface-diff-rename-step1
Nov 12, 2026
Merged

cliffhall merged 1 commit into
v2/mainfrom
v2/chore/5463-mcp-interface-diff-rename-step1

Conversation

@cliffhall

Copy link
Copy Markdown
Member

Closes #5463

Description

Step 1 of renaming .github/workflows/everything-mcp-diff.yml to mcp-interface-diff.yml, staged across a milestone merge.

The callers (version-packages.yml, prepare-python-release.yml, RELEASING.md, the release skill, scripts/lib/interface-diff-servers.mjs) are unchanged; #5527 (Step 2) switches them after this reaches main.

Server Details

  • Server: none (repository-wide)
  • Changes: CI workflows, a script test, AGENTS.md

Motivation and Context

GitHub dispatches a workflow only when its file exists on the default branch (main), and both version workflows dispatch the diff by file name from v2/main. A one-step rename on v2/main would break their dispatch until the next milestone merge. Getting the new name onto main first lets Step 2 rename with no gap.

Why a placeholder rather than a full copy (the issue offered a copy as one example): a workflow_dispatch call resolves the file name on main but runs the file as it is on the dispatched ref. So a placeholder on main makes mcp-interface-diff.yml dispatchable exactly as well as a copy would, and there is no second 400-line copy to keep in sync with everything-mcp-diff.yml until Step 2. Step 2 moves the real contents into this file.

How Has This Been Tested?

No client-observable surface (CI only), so targeted probes:

  • npm run local:gate exits 0.
  • The new test passes: node --test scripts/version-pr-ci.test.mjs → ✔ mcp-interface-diff.yml is a dispatch-only placeholder until Step 2.
  • Planted defect: adding pull_request: to the placeholder's on: fails that test (deepEqual on the trigger list); reverting makes it pass again.
  • git show origin/main:.github/workflows/mcp-interface-diff.yml fails today, which confirms the name is not on main yet and this step is needed.
  • The workflow-gate guard (every job declares timeout-minutes) passes on the new file inside the gate.

Breaking Changes

None.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update

(CI-only chore; none of the above apply.)

Checklist

  • I have read the MCP Protocol Documentation (not applicable: no protocol surface changes)
  • My changes follow MCP security best practices (the new workflow holds contents: read only and runs no repository code)
  • I have updated the server's README accordingly (not applicable: no server changes; the AGENTS.md tree is updated)
  • I have added a changeset (npm run changeset) if this changes what a TypeScript server publishes (not applicable: nothing published changes)
  • I have tested this with an LLM client (not applicable: no server-facing change; probes above)
  • My code follows the repository's style guidelines
  • New and existing tests pass locally
  • I have added appropriate error handling (not applicable: the placeholder only prints a message)
  • I have documented all environment variables and configuration options (not applicable: none added)

Additional context

Next: once this ships to main in the v2.5.0 milestone merge, #5527 does Step 2.

🤖 Generated with Claude Code

Step 1 of the staged rename of everything-mcp-diff.yml (#5463). GitHub
dispatches a workflow only when its file exists on the default branch, and
the version workflows dispatch the diff by file name from v2/main, so the new
name ships to main first as a placeholder with only a workflow_dispatch
trigger. #5527 then moves the diff into it and switches the callers.

A test pins that the placeholder is dispatch-only and that no version
workflow dispatches it yet.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: cliffhall <cliff@futurescale.com>
@cliffhall cliffhall added the v2 label Nov 12, 2026
@changeset-bot

changeset-bot Bot commented Nov 12, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: bc9d1e6

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@github-actions

Copy link
Copy Markdown
Contributor

fetch: MCP interface diff

Base: 6cfff622fb8e (Merge pull request #5470 from modelcontextprotocol/changeset-release/v2/main)
Head: the build in this checkout, at c55141ef93e2 (Merge bc9d1e6 into 6cfff62)

Diffed because it was named (--server).

✅ No interface changes detected.

Tools Prompts Resources Resource templates
Base 1 1 0 0
Head 1 1 0 0

Updated by this run for bc9d1e6273f92d4c0d2ce8476848df2e3ec10ace.

@github-actions

Copy link
Copy Markdown
Contributor

memory: MCP interface diff

Base: 6cfff622fb8e (Merge pull request #5470 from modelcontextprotocol/changeset-release/v2/main)
Head: the build in this checkout, at c55141ef93e2 (Merge bc9d1e6 into 6cfff62)

Diffed because it was named (--server).

✅ No interface changes detected.

Tools Prompts Resources Resource templates
Base 9 0 1 0
Head 9 0 1 0

Updated by this run for bc9d1e6273f92d4c0d2ce8476848df2e3ec10ace.

@github-actions

Copy link
Copy Markdown
Contributor

time: MCP interface diff

Base: 6cfff622fb8e (Merge pull request #5470 from modelcontextprotocol/changeset-release/v2/main)
Head: the build in this checkout, at c55141ef93e2 (Merge bc9d1e6 into 6cfff62)

Diffed because it was named (--server).

✅ No interface changes detected.

Tools Prompts Resources Resource templates
Base 3 0 0 0
Head 3 0 0 0

Updated by this run for bc9d1e6273f92d4c0d2ce8476848df2e3ec10ace.

@github-actions

Copy link
Copy Markdown
Contributor

git: MCP interface diff

Base: 6cfff622fb8e (Merge pull request #5470 from modelcontextprotocol/changeset-release/v2/main)
Head: the build in this checkout, at c55141ef93e2 (Merge bc9d1e6 into 6cfff62)

Diffed because it was named (--server).

✅ No interface changes detected.

Tools Prompts Resources Resource templates
Base 14 2 0 0
Head 14 2 0 0

Updated by this run for bc9d1e6273f92d4c0d2ce8476848df2e3ec10ace.

@github-actions

Copy link
Copy Markdown
Contributor

everything: MCP interface diff

Base: 6cfff622fb8e (Merge pull request #5470 from modelcontextprotocol/changeset-release/v2/main)
Head: the build in this checkout, at c55141ef93e2 (Merge bc9d1e6 into 6cfff62)

Diffed because it was named (--server).

✅ No interface changes detected.

Tools Prompts Resources Resource templates
Base 22 4 8 5
Head 22 4 8 5

Updated by this run for bc9d1e6273f92d4c0d2ce8476848df2e3ec10ace.

@github-actions

Copy link
Copy Markdown
Contributor

filesystem: MCP interface diff

Base: 6cfff622fb8e (Merge pull request #5470 from modelcontextprotocol/changeset-release/v2/main)
Head: the build in this checkout, at c55141ef93e2 (Merge bc9d1e6 into 6cfff62)

Diffed because it was named (--server).

✅ No interface changes detected.

Tools Prompts Resources Resource templates
Base 16 0 0 1
Head 16 0 0 1

Updated by this run for bc9d1e6273f92d4c0d2ce8476848df2e3ec10ace.

@github-actions

Copy link
Copy Markdown
Contributor

sequentialthinking: MCP interface diff

Base: 6cfff622fb8e (Merge pull request #5470 from modelcontextprotocol/changeset-release/v2/main)
Head: the build in this checkout, at c55141ef93e2 (Merge bc9d1e6 into 6cfff62)

Diffed because it was named (--server).

✅ No interface changes detected.

Tools Prompts Resources Resource templates
Base 1 0 0 0
Head 1 0 0 0

Updated by this run for bc9d1e6273f92d4c0d2ce8476848df2e3ec10ace.

Copilot AI left a comment

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.

🟢 Approval recommended

No active review issues were identified for the staged workflow rename.

No open issues 🎉

What changed in this PR

Stages the MCP interface-diff workflow rename by adding the future filename before it reaches main. Existing dispatch callers remain unchanged until Step 2 (#5527), avoiding a gap in version-PR checks.

Changes:

  • Adds a dispatch-only placeholder that points to the existing workflow without duplicating automatic runs.
  • Adds a regression test ensuring the placeholder stays dispatch-only and version workflows do not target it yet.
  • Documents the staged transition in workflow comments and the repository tree.
File Description
scripts/​version-pr-ci.test.mjs Pins the placeholder’s trigger and unchanged dispatch callers.
AGENTS.md Lists the new placeholder in the workflows tree.
.github/​workflows/​mcp-interface-diff.yml Adds the future workflow filename with a message-only manual job.
.github/​workflows/​everything-mcp-diff.yml Updates header comments to explain the staged rename; no behavior change.

Review effort: Balanced

@cliffhall

Copy link
Copy Markdown
Member Author

Copilot round 1: clean (no findings, no suppressed comments). The review loop has converged on its first round; no further rounds requested.

@cliffhall
cliffhall merged commit 1a42b3b into v2/main Nov 12, 2026
58 checks passed
@cliffhall
cliffhall deleted the v2/chore/5463-mcp-interface-diff-rename-step1 branch November 12, 2026 04:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CI: rename everything-mcp-diff.yml to mcp-interface-diff.yml, staged across a milestone merge [Step 1]

2 participants