feat(web): wire up MCP task support — Tasks screen, Run-as-task, status toasts (#1422) (#1424)

Wires the ported Tasks screen + core task subsystem through App.tsx: sticky Clear Completed, cancel/refresh error toasts, core-side per-task progress correlation, Run-as-task on the Tools screen (gated on server support), per-server Task TTL, and live task-status toasts.
This commit is contained in:
Cliff Hall 2026-06-04 08:49:47 -04:00 • committed by GitHub
commit ed6eda7492
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 1192 additions and 40 deletions

View file

@ -16,6 +16,7 @@ const initialSettings: InspectorServerSettings = {
metadata: [{ key: "userId", value: "user-789" }],
connectionTimeout: 30000,
requestTimeout: 60000,
taskTtl: 60000,
oauthClientId: "my-client-id",
oauthClientSecret: "super-secret-value",
oauthScopes: "read write",
@ -67,6 +68,7 @@ export const EmptySettings: Story = {
metadata: [],
connectionTimeout: 30000,
requestTimeout: 60000,
taskTtl: 60000,
},
},
};

View file

@ -9,6 +9,7 @@ const initialSettings: InspectorServerSettings = {
metadata: [{ key: "userId", value: "u-1" }],
connectionTimeout: 30000,
requestTimeout: 60000,
taskTtl: 60000,
oauthClientId: "cid",
oauthClientSecret: "secret",
oauthScopes: "read",
@ -19,6 +20,7 @@ const emptySettings: InspectorServerSettings = {
metadata: [],
connectionTimeout: 30000,
requestTimeout: 60000,
taskTtl: 60000,
};
describe("ServerSettingsModal", () => {

View file

@ -83,7 +83,7 @@ export function ServerSettingsModal({
}
function handleTimeoutChange(
field: "connectionTimeout" | "requestTimeout",
field: "connectionTimeout" | "requestTimeout" | "taskTtl",
value: number,
) {
onSettingsChange({ ...settings, [field]: value });