Skip to content

LIM-2424: declare agreement.launch in align_get_accepted_plan's output schema - #15

Merged
allsmog merged 1 commit into
mainfrom
agent/LIM-2424-mcp-launch-schema
Oct 23, 2026
Merged

allsmog merged 1 commit into
mainfrom
agent/LIM-2424-mcp-launch-schema

Conversation

@liminalshruti

Copy link
Copy Markdown
Collaborator

Fixes a bug on main (696c6b3) found by Mini S0. On every custom scenario, a validating MCP client rejects align_get_accepted_plan:

Structured content does not match the tool's output schema: data/agreement must NOT have additional properties

Cause. P1-3 (820aa15) added agreement.launch (approved | pending | not_applicable) to the tool's structuredContent. It was left out of the output schema to keep the Northstar tool listing unchanged, on the wrong belief that the schema wasn't strict. The published schema has additionalProperties: false. The gate missed it because test-mcp only ran on Northstar.

Impact. Local Mode L agents on custom scenarios. Hosted mode has no MCP (404), so hosted testers aren't affected.

Changes

  • lib/mcp/register.ts: declares launch as a required enum in AcceptedPlanOut.agreement, and fixes the comment.
  • scripts/test-mcp-custom.mjs, plus the test-all step test-mcp:custom: the same validating SDK client, run on a custom scenario, then reset to Northstar.
    • Fails on 696c6b3 with the error above.
    • Passes on this branch.
  • Northstar snapshot: 4 step files re-captured (01, 04, 25, 28). A JSON-path diff shows the only change is the tool listing's outputSchema.agreement: properties.launch is added and "launch" joins required. No Northstar state, API response or test-flow output changed. @allsmog: this is a tool-listing change and needs your sign-off.

Gate: scripts/test-all.sh 3264 passes all 16 steps, including the new test-mcp:custom. The rest:

  • the Northstar snapshot, against the re-captured listing;
  • test-flow identical;
  • scenario 73 ×3, ui-loop 30, tenancy 166;
  • capture and mapper pass after the custom run's reset;
  • ui-northstar identical (125).

Independent of #10, #11, #13 and #14.

https://claude.ai/code/session_01NdA1ZeBBUXwxCGPZcJhfJM

@allsmog allsmog 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.

Approved @ b4a4747. Read the diff. agreement.launch is now declared in the MCP output schema, which has additionalProperties: false, so a validating client no longer rejects the whole result. The new test-mcp:custom step covers that. I'm signing off on the Northstar API snapshot change it brings. It's only the tools/list schema gaining the launch enum in four step files, with no behavior change. Gate: I'll run it on main after the merges.

…t schema

P1-3 (820aa15) added agreement.launch ("approved" | "pending" | "not_applicable") to the accepted plan's
structuredContent but left it out of the output schema to keep the Northstar tool listing unchanged. The
published schema has additionalProperties: false, so a validating MCP client (the SDK client included)
rejected align_get_accepted_plan on every custom scenario: "data/agreement must NOT have additional
properties". Found by Mini S0 on main 696c6b3. The gate missed it because test-mcp only ran on Northstar.

- lib/mcp/register.ts: declare launch as a required enum; the comment no longer claims the schema isn't strict.
- scripts/test-mcp-custom.mjs + test-all step test-mcp:custom: the same validating client on a custom
  scenario, then back to Northstar. Fails on 696c6b3 with the error above; passes here.
- Northstar snapshot: 4 step files re-captured (01, 04, 25, 28). The only change is the tool listing's
  agreement schema (launch added to properties and required). No Northstar state, API or test-flow output
  changed. Needs Sean's sign-off as a listing change.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants