Reject removed tools.serena in parser and align with schema#32909
Merged
Conversation
5 tasks
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Fix schema and parser disagreement for tools.serena
Reject removed May 17, 2026
tools.serena in parser and align with schema
Collaborator
|
@copilot not special treatment, just error |
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Contributor
Author
pelikhan
approved these changes
May 17, 2026
Contributor
There was a problem hiding this comment.
Pull request overview
This PR removes parser support for the removed tools.serena built-in MCP tool and adds coverage for rejecting it.
Changes:
- Rejects
tools.serenaduring MCP extraction. - Removes Serena from built-in MCP tool handling.
- Adds a parser test for the removed Serena behavior and updates the generated smoke workflow lock.
Show a summary per file
| File | Description |
|---|---|
pkg/parser/mcp.go |
Rejects tools.serena and removes Serena built-in MCP configuration logic. |
pkg/parser/mcp_test.go |
Adds error assertion support and a test case for removed Serena config. |
.github/workflows/smoke-claude.lock.yml |
Aligns the locked workflow cleanup step with generated checkout cleanup behavior. |
Copilot's findings
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comments suppressed due to low confidence (1)
pkg/parser/mcp.go:218
- This second
tools.serenarejection uses a shorter message than the schema's removal guidance (pkg/parser/schemas/main_workflow_schema.json:4493). Keep both rejection paths on the same full migration message, or factor the message into a shared constant to avoid drift.
if toolName == "serena" {
return nil, fmt.Errorf("tools.serena is removed")
}
- Files reviewed: 3/3 changed files
- Comments generated: 2
Comment on lines
+185
to
+187
| if toolName == "serena" { | ||
| return nil, fmt.Errorf("tools.serena is removed") | ||
| } |
| }, | ||
| }, | ||
| expectError: true, | ||
| expectedErrContains: "tools.serena is removed", |
github-actions Bot
added a commit
that referenced
this pull request
May 18, 2026
…ywright The 2026-02-05 'how workflows work' blog post showed tools.serena as a built-in MCP tool example, but the schema has marked tools.serena as REMOVED (with x-removed: true) and PR #32909 made the parser reject it at compile time. Users copying the example would now get a hard compile error. Replaced with tools.playwright (mode: cli) — a still-valid built-in MCP tool — to keep the three-tool illustration intact. The mcp-servers prose mention of serena is unchanged because Serena remains accessible as an external server via shared/mcp/serena.md import.
This was referenced May 18, 2026
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.
tools.serenawas marked as removed in the main workflow schema, but the parser still accepted and configured it as a built-in MCP tool. This change makes parser behavior match the schema contract and provides an explicit migration path.Parser/schema contract alignment
ExtractMCPConfigurationsnow rejects top-leveltools.serenawith a compile-time error.shared/mcp/serena.md.Built-in MCP cleanup
serenafrom built-in tool detection intools.processBuiltinMCPTool(built-ins now only includegithubandplaywright).Coverage for removed behavior
tools.serenareturns an error containing the removal message.