fix(web): read modern tasks support from the extension map
SEP-2663 moved task support from `capabilities.tasks` to the negotiated `capabilities.extensions["io.modelcontextprotocol/tasks"]`, but the Connection Info modal's capability grid tested only for the top-level key. A modern server that advertised the extension in `server/discover` therefore showed "Tasks ✗" while the very same extension id was listed under "Server Extensions" two sections below. Server capability rows now fall back to an extension id for the capabilities the modern era expresses that way (tasks is the only one today), gated on the negotiated era so a legacy connection is still judged purely on its `initialize` capabilities. Keyed the same way `InspectorClient.isTasksExtensionNegotiated()` gates the Tasks tab, so the checkmark and the tab can't disagree. Signed-off-by: cliffhall <cliff@futurescale.com>
This commit is contained in:
parent
8dd0fdf28b
commit
73913ef09f
1 changed files with 161 additions and 2 deletions
|
|
@ -77,6 +77,14 @@ export const ModernEra: Story = {
|
|||
},
|
||||
},
|
||||
},
|
||||
// SEP-2663 moved task support to the extension map, so the Tasks capability
|
||||
// row must read it there on a modern connection — otherwise a tasks-capable
|
||||
// server shows ✗ while listing the extension below (#1887).
|
||||
play: async ({ canvasElement }) => {
|
||||
const canvas = within(canvasElement);
|
||||
const tasksRow = canvas.getByText("Tasks");
|
||||
await expect(tasksRow.previousElementSibling).toHaveTextContent("✓");
|
||||
},
|
||||
};
|
||||
|
||||
// A modern server that omitted the optional `_meta` serverInfo stamp (#1772).
|
||||
|
|
|
|||
Loading…
Reference in a new issue