Skip to content

test(mcp): SKILL.md ↔ native tool-surface drift guard (#2714) - #2718

Merged
os-zhuang merged 1 commit into
mainfrom
test/skill-tool-surface-guard
Jul 9, 2026
Merged

test(mcp): SKILL.md ↔ native tool-surface drift guard (#2714)#2718
os-zhuang merged 1 commit into
mainfrom
test/skill-tool-surface-guard

Conversation

@os-zhuang

Copy link
Copy Markdown
Contributor

Follow-up to #2715 (#2714 Phase 0): make the fixed gap structurally unrepeatable.

The 7-of-9 gap happened because skill.ts was written against the CRUD set after the action tools (#2307) had already shipped — nothing connected the two. This guard derives the registered tool surface from a real tools/list round-trip (MCPServerRuntime + full data+action bridge, the same harness as mcp-action-tools.test.ts) and asserts every name appears in renderSkillMarkdown(). No hand-maintained name list: adding a tool to mcp-http-tools.ts without teaching the skill turns the suite red with a pointed message naming the missing tool.

Red-proven: temporarily stripping run_action from skill.ts fails with
tools registered but missing from SKILL.md — update packages/mcp/src/skill.ts: run_action.

Includes a sanity floor (>= 9 tools seen) so a broken harness can't pass vacuously. Test-only; no runtime change. 64/64 pass.

Refs #2714, #2715.

🤖 Generated with Claude Code

Asserts every tool registered on the HTTP MCP surface appears in the
generated SKILL.md, deriving the surface from a real tools/list round-trip
rather than a name list. Red-proven: stripping run_action from skill.ts
fails with a pointed message.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@vercel

vercelBot commented Jul 9, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

ProjectDeploymentActionsUpdated (UTC)
specReadyReadyPreview, CommentJul 9, 2026 8:40am

Request Review

@github-actions

Copy link
Copy Markdown
Contributor

📓 Docs Drift Check

This PR changes 1 package(s): @objectstack/mcp.

9 hand-written doc(s) reference the affected code and may need an implementation-accuracy re-verification:

  • content/docs/ai/actions-as-tools.mdx(via @objectstack/mcp)
  • content/docs/ai/agents.mdx(via @objectstack/mcp)
  • content/docs/ai/index.mdx(via @objectstack/mcp)
  • content/docs/ai/natural-language-queries.mdx(via @objectstack/mcp)
  • content/docs/api/index.mdx(via @objectstack/mcp)
  • content/docs/deployment/environment-variables.mdx(via @objectstack/mcp)
  • content/docs/plugins/packages.mdx(via @objectstack/mcp)
  • content/docs/protocol/knowledge.mdx(via @objectstack/mcp)
  • content/docs/releases/implementation-status.mdx(via @objectstack/mcp)

Advisory only. To re-verify, run the docs-accuracy-audit workflow scoped to these files:
node scripts/docs-audit/affected-docs.mjs origin/main → pass the list as args.docs.

@os-zhuang
os-zhuang merged commit 148beb4 into mainJul 9, 2026
16 checks passed
@os-zhuang
os-zhuang deleted the test/skill-tool-surface-guard branch July 9, 2026 10:19
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentationImprovements or additions to documentationsize/mteststooling

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@os-zhuang