Skip to content

[deep-report] Resolve tools.serena schema/parser disagreement (schema says REMOVED, parser still accepts it) #32885

Description

@github-actions

Problem

The schema and parser disagree on tools.serena:

Schema (pkg/parser/schemas/main_workflow_schema.json, properties.tools.properties.serena):

{
  "description": "REMOVED: Built-in support for Serena has been removed. Use the shared/mcp/serena.md workflow instead.",
  "deprecated": true,
  "x-removed": true,
  "x-removal-message": "tools.serena built-in support has been removed. Import shared/mcp/serena.md instead"
}

Parser (pkg/parser/mcp.go:186, 214, 425): still has explicit serena handling as a built-in MCP tool alongside github and playwright:

if toolName == "github" || toolName == "playwright" || toolName == "serena" {
    config, err := processBuiltinMCPTool(toolName, toolValue, serverFilter)
}

No compile-time error or warning is emitted when tools.serena: is used at the top level. The x-removed extension is non-standard JSON Schema and not enforced anywhere in the codebase.

Impact

A user who reads the schema (e.g. via IDE schema integration) is told tools.serena is removed, but it silently works. Two truthful contracts disagree.

Fix

Pick one:

Option A — Honor the schema (recommended): Add a compile-time error in pkg/parser/mcp.go that rejects tools.serena with the x-removal-message, deleting the three serena code paths.

Option B — Honor the parser: Remove x-removed: true from the schema and downgrade the description to a deprecation notice (since the feature still works).

Evidence

Schema Consistency Audit 2026-05-17 (#32772).

Acceptance Criteria

  • One option chosen and applied
  • Compiler behavior matches schema declaration
  • Existing workflows using tools.serena (if any) given a clear migration path
  • Test coverage exists

Suggested Agent

Copilot — well-scoped consistency fix in parser + schema.

Estimated Effort

1–2h


Source: DeepReport Intelligence Briefing 2026-05-17 — pulls from Schema Consistency Audit (#32772).

Generated by 🔬 DeepReport - Intelligence Gathering Agent · ● 24.9M ·

  • expires on May 19, 2026, 7:40 PM UTC

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions