@opentabs-dev/mcp-server 0.0.70 → 0.0.72

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/dist/browser-tools/analyze-site/index.d.ts.map +1 -1
  2. package/dist/browser-tools/analyze-site/index.js +3 -2
  3. package/dist/browser-tools/analyze-site/index.js.map +1 -1
  4. package/dist/browser-tools/disable-network-capture.d.ts.map +1 -1
  5. package/dist/browser-tools/disable-network-capture.js +3 -1
  6. package/dist/browser-tools/disable-network-capture.js.map +1 -1
  7. package/dist/browser-tools/enable-network-capture.d.ts.map +1 -1
  8. package/dist/browser-tools/enable-network-capture.js +3 -1
  9. package/dist/browser-tools/enable-network-capture.js.map +1 -1
  10. package/dist/browser-tools/export-har.d.ts.map +1 -1
  11. package/dist/browser-tools/export-har.js +2 -1
  12. package/dist/browser-tools/export-har.js.map +1 -1
  13. package/dist/browser-tools/extension-force-reconnect.d.ts +3 -1
  14. package/dist/browser-tools/extension-force-reconnect.d.ts.map +1 -1
  15. package/dist/browser-tools/extension-force-reconnect.js +11 -3
  16. package/dist/browser-tools/extension-force-reconnect.js.map +1 -1
  17. package/dist/browser-tools/extension-get-logs.d.ts +1 -0
  18. package/dist/browser-tools/extension-get-logs.d.ts.map +1 -1
  19. package/dist/browser-tools/extension-get-logs.js +7 -1
  20. package/dist/browser-tools/extension-get-logs.js.map +1 -1
  21. package/dist/browser-tools/extension-get-side-panel.d.ts +3 -1
  22. package/dist/browser-tools/extension-get-side-panel.d.ts.map +1 -1
  23. package/dist/browser-tools/extension-get-side-panel.js +11 -3
  24. package/dist/browser-tools/extension-get-side-panel.js.map +1 -1
  25. package/dist/browser-tools/extension-get-state.d.ts +3 -1
  26. package/dist/browser-tools/extension-get-state.d.ts.map +1 -1
  27. package/dist/browser-tools/extension-get-state.js +11 -3
  28. package/dist/browser-tools/extension-get-state.js.map +1 -1
  29. package/dist/browser-tools/list-tabs.d.ts +3 -1
  30. package/dist/browser-tools/list-tabs.d.ts.map +1 -1
  31. package/dist/browser-tools/list-tabs.js +18 -4
  32. package/dist/browser-tools/list-tabs.js.map +1 -1
  33. package/dist/browser-tools/open-tab.d.ts +1 -0
  34. package/dist/browser-tools/open-tab.d.ts.map +1 -1
  35. package/dist/browser-tools/open-tab.js +12 -2
  36. package/dist/browser-tools/open-tab.js.map +1 -1
  37. package/dist/browser-tools/plugin-list-tabs.d.ts +1 -0
  38. package/dist/browser-tools/plugin-list-tabs.d.ts.map +1 -1
  39. package/dist/browser-tools/plugin-list-tabs.js +31 -5
  40. package/dist/browser-tools/plugin-list-tabs.js.map +1 -1
  41. package/dist/browser-tools/reload-extension.d.ts.map +1 -1
  42. package/dist/browser-tools/reload-extension.js +12 -4
  43. package/dist/browser-tools/reload-extension.js.map +1 -1
  44. package/dist/extension-handlers.d.ts +12 -7
  45. package/dist/extension-handlers.d.ts.map +1 -1
  46. package/dist/extension-handlers.js +46 -22
  47. package/dist/extension-handlers.js.map +1 -1
  48. package/dist/extension-protocol.d.ts +17 -1
  49. package/dist/extension-protocol.d.ts.map +1 -1
  50. package/dist/extension-protocol.js +101 -11
  51. package/dist/extension-protocol.js.map +1 -1
  52. package/dist/http-routes.d.ts.map +1 -1
  53. package/dist/http-routes.js +98 -48
  54. package/dist/http-routes.js.map +1 -1
  55. package/dist/mcp-tool-dispatch.d.ts.map +1 -1
  56. package/dist/mcp-tool-dispatch.js +7 -1
  57. package/dist/mcp-tool-dispatch.js.map +1 -1
  58. package/dist/reload.d.ts.map +1 -1
  59. package/dist/reload.js +21 -15
  60. package/dist/reload.js.map +1 -1
  61. package/dist/shutdown.js +4 -4
  62. package/dist/shutdown.js.map +1 -1
  63. package/dist/state.d.ts +30 -8
  64. package/dist/state.d.ts.map +1 -1
  65. package/dist/state.js +56 -5
  66. package/dist/state.js.map +1 -1
  67. package/package.json +1 -1
@@ -8,7 +8,7 @@ import { toErrorMessage } from '@opentabs-dev/shared';
8
8
  import { ADAPTER_WRITE_TIMEOUT_MS, cleanupStaleAdapterFiles, cleanupStaleExecFiles, deleteExecFile, ensureAdaptersDir, timeoutRace, writeAdapterFile, writeExecFile, } from './adapter-files.js';
9
9
  import { buildConfigStatePayload, handleConfigGetState, handleConfigSetPluginPermission, handleConfigSetSkipPermissions, handleConfigSetToolPermission, handleConfirmationResponse, handleFolderOpen, handlePluginCheckUpdates, handlePluginInstall, handlePluginLog, handlePluginRemove, handlePluginRemoveBySpecifier, handlePluginSearch, handlePluginUpdateFromRegistry, handleTabStateChanged, handleTabSyncAll, handleToolProgress, rejectAllPendingConfirmations, sendJsonRpcError, sendToExtension, serializePluginForExtension, } from './extension-handlers.js';
10
10
  import { log } from './logger.js';
11
- import { DISPATCH_TIMEOUT_MS, getNextRequestId } from './state.js';
11
+ import { DISPATCH_TIMEOUT_MS, findConnectionByWs, getAnyConnection, getConnectionForTab, getNextRequestId, } from './state.js';
12
12
  /** Maximum incoming WebSocket message size (10MB) */
13
13
  const MAX_MESSAGE_SIZE = 10 * 1024 * 1024;
14
14
  /**
@@ -82,16 +82,104 @@ const sendSyncFull = async (state) => {
82
82
  log.warn('Failed to send sync.full — extension not connected');
83
83
  }
84
84
  };
85
+ /**
86
+ * Resolve which connection should handle a dispatch based on the params.
87
+ * For params with a numeric tabId, finds the connection that owns that tab.
88
+ * Falls back to any available connection when tabId is absent or not found
89
+ * (the extension may have just opened the tab and not yet reported it via tab.syncAll).
90
+ */
91
+ const resolveConnection = (state, params) => {
92
+ if (state.extensionConnections.size === 0)
93
+ return undefined;
94
+ if (state.extensionConnections.size === 1) {
95
+ return state.extensionConnections.values().next().value;
96
+ }
97
+ // Explicit connection targeting takes priority
98
+ const connectionId = typeof params.connectionId === 'string' ? params.connectionId : undefined;
99
+ if (connectionId !== undefined) {
100
+ const conn = state.extensionConnections.get(connectionId);
101
+ if (conn)
102
+ return conn;
103
+ }
104
+ // Tab-based routing
105
+ const tabId = typeof params.tabId === 'number' ? params.tabId : undefined;
106
+ if (tabId !== undefined) {
107
+ const conn = getConnectionForTab(state, tabId);
108
+ if (conn)
109
+ return conn;
110
+ }
111
+ return getAnyConnection(state);
112
+ };
113
+ /**
114
+ * Dispatch a JSON-RPC request to ALL active extension connections in parallel,
115
+ * collecting per-connection results. Connections that fail or time out are
116
+ * silently excluded from the results (partial success model).
117
+ *
118
+ * Used by tools that need a merged view across all browser profiles
119
+ * (e.g., browser_list_tabs).
120
+ */
121
+ const dispatchToAllConnections = async (state, method, params, options) => {
122
+ if (state.extensionConnections.size === 0) {
123
+ throw new Error('Extension not connected');
124
+ }
125
+ const opts = options ?? {};
126
+ const timeoutMs = opts.timeoutMs ?? DISPATCH_TIMEOUT_MS;
127
+ const entries = Array.from(state.extensionConnections.values());
128
+ const settled = await Promise.allSettled(entries.map(conn => {
129
+ const id = getNextRequestId();
130
+ const msg = {
131
+ jsonrpc: '2.0',
132
+ method,
133
+ params: { ...params, __opentabs_dispatchId: id },
134
+ id,
135
+ };
136
+ return new Promise((resolve, reject) => {
137
+ const timerId = setTimeout(() => {
138
+ state.pendingDispatches.delete(id);
139
+ reject(new Error(`Dispatch ${method} timed out after ${timeoutMs}ms`));
140
+ }, timeoutMs);
141
+ state.pendingDispatches.set(id, {
142
+ resolve,
143
+ reject,
144
+ label: opts.label ?? method,
145
+ startTs: Date.now(),
146
+ timerId,
147
+ connectionId: conn.connectionId,
148
+ });
149
+ try {
150
+ conn.ws.send(JSON.stringify(msg));
151
+ }
152
+ catch (err) {
153
+ clearTimeout(timerId);
154
+ state.pendingDispatches.delete(id);
155
+ reject(new Error(`WebSocket send failed: ${toErrorMessage(err)}`));
156
+ }
157
+ });
158
+ }));
159
+ const results = [];
160
+ for (const [i, s] of settled.entries()) {
161
+ if (s.status === 'fulfilled') {
162
+ const conn = entries[i];
163
+ if (conn)
164
+ results.push({ connectionId: conn.connectionId, result: s.value });
165
+ }
166
+ }
167
+ return results;
168
+ };
85
169
  /**
86
170
  * Send a JSON-RPC request to the extension and return a promise for the response.
87
171
  * Unified dispatch for both browser commands (browser.*, extension.*) and
88
172
  * plugin tool dispatches (tool.dispatch).
173
+ *
174
+ * Routes to the connection that owns the target tab (if tabId is in params),
175
+ * falling back to any available connection when the tab isn't found or no
176
+ * tabId is specified.
89
177
  */
90
178
  const dispatchToExtension = (state, method, params, options) => {
91
179
  // Backward-compatible: options can be a string (label) for existing callers
92
180
  const opts = typeof options === 'string' ? { label: options } : (options ?? {});
93
- const ws = state.extensionWs;
94
- if (!ws) {
181
+ const conn = resolveConnection(state, params);
182
+ if (!conn) {
95
183
  return Promise.reject(new Error('Extension not connected'));
96
184
  }
97
185
  const id = getNextRequestId();
@@ -118,11 +206,12 @@ const dispatchToExtension = (state, method, params, options) => {
118
206
  timerId,
119
207
  progressToken: opts.progressToken,
120
208
  onProgress: opts.onProgress,
209
+ connectionId: conn.connectionId,
121
210
  };
122
211
  state.pendingDispatches.set(id, pending);
123
- log.debug('dispatch → extension:', method, 'id:', id);
212
+ log.debug('dispatch → extension:', method, 'id:', id, 'connection:', conn.connectionId);
124
213
  try {
125
- ws.send(JSON.stringify(msg));
214
+ conn.ws.send(JSON.stringify(msg));
126
215
  }
127
216
  catch (err) {
128
217
  clearTimeout(timerId);
@@ -233,10 +322,9 @@ const handleExtensionMessage = (state, text, callbacks, senderWs) => {
233
322
  const id = typeof parsed.id === 'string' || typeof parsed.id === 'number' ? parsed.id : undefined;
234
323
  // Handle ping keepalive — reply on the SAME ws that sent the ping.
235
324
  // This is critical during hot reload: if the old connection sends a ping
236
- // before it's closed, the pong must go back on that connection (not the
237
- // new one stored in state.extensionWs).
325
+ // before it's closed, the pong must go back on that specific connection.
238
326
  if (method === 'ping') {
239
- const replyWs = senderWs ?? state.extensionWs;
327
+ const replyWs = senderWs ?? getAnyConnection(state)?.ws;
240
328
  replyWs?.send(JSON.stringify({ jsonrpc: '2.0', method: 'pong' }));
241
329
  return;
242
330
  }
@@ -277,13 +365,15 @@ const handleExtensionMessage = (state, text, callbacks, senderWs) => {
277
365
  return;
278
366
  }
279
367
  const params = rawParams;
368
+ // Resolve which connection sent this message (needed for per-connection tab scoping)
369
+ const senderConn = senderWs ? findConnectionByWs(state, senderWs) : getAnyConnection(state);
280
370
  // Route to individual handlers in extension-handlers.ts
281
371
  if (method === 'tab.syncAll') {
282
- handleTabSyncAll(state, params);
372
+ handleTabSyncAll(params, senderConn);
283
373
  return;
284
374
  }
285
375
  if (method === 'tab.stateChanged') {
286
- handleTabStateChanged(state, params, id);
376
+ handleTabStateChanged(state, params, id, senderConn);
287
377
  return;
288
378
  }
289
379
  if (method === 'config.getState' && id !== undefined) {
@@ -404,5 +494,5 @@ const sendExtensionReload = (state) => sendToExtension(state, {
404
494
  jsonrpc: '2.0',
405
495
  method: 'extension.reload',
406
496
  });
407
- export { sendSyncFull, dispatchToExtension, queryExtension, sendInvocationStart, sendInvocationEnd, sendConfirmationRequest, rejectAllPendingConfirmations, sendPluginUpdate, handleExtensionMessage, isDispatchError, writeAdapterFile, writeExecFile, deleteExecFile, cleanupStaleExecFiles, sendExtensionReload, };
497
+ export { sendSyncFull, dispatchToAllConnections, dispatchToExtension, queryExtension, sendInvocationStart, sendInvocationEnd, sendConfirmationRequest, rejectAllPendingConfirmations, sendPluginUpdate, handleExtensionMessage, isDispatchError, writeAdapterFile, writeExecFile, deleteExecFile, cleanupStaleExecFiles, sendExtensionReload, };
408
498
  //# sourceMappingURL=extension-protocol.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"extension-protocol.js","sourceRoot":"","sources":["../src/extension-protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extension-protocol.js","sourceRoot":"","sources":["../src/extension-protocol.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"http-routes.d.ts","sourceRoot":"","sources":["../src/http-routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,EAAE,wCAAwC,EAAE,MAAM,+DAA+D,CAAC;AAEzH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAerD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAKxD,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,YAAY,CAAC;AAI1D,6DAA6D;AAC7D,KAAK,WAAW,GAAG,MAAM;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,mBAAmB,EAAE,MAAM,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAAC;AAExH,kEAAkE;AAClE,UAAU,SAAS;IACjB,KAAK,EAAE,WAAW,CAAC;IACnB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,wCAAwC,CAAC,CAAC;IAClE,cAAc,EAAE,iBAAiB,EAAE,CAAC;IACpC,WAAW,EAAE,WAAW,CAAC;CAC1B;AAsCD;;;GAGG;AACH,QAAA,MAAM,iBAAiB,GAAI,GAAG,MAAM,EAAE,GAAG,MAAM,KAAG,OAGjD,CAAC;AAEF;;;;;GAKG;AACH,QAAA,MAAM,eAAe,GAAI,KAAK,OAAO,EAAE,UAAU,MAAM,GAAG,IAAI,KAAG,QAAQ,GAAG,IAQ3E,CAAC;AAKF;;;;GAIG;AACH,QAAA,MAAM,eAAe,GAAI,YAAY,MAAM,KAAG,OAa7C,CAAC;AAGF,QAAA,MAAM,sBAAsB,GAAI,OAAO,WAAW,EAAE,UAAU,MAAM,EAAE,cAAc,MAAM,KAAG,OAiB5F,CAAC;AA+CF,uEAAuE;AACvE,UAAU,aAAa;IACrB,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,WAAW,CAAA;KAAE,KAAK,OAAO,CAAC;IACnF,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAClD;AA8fD,qEAAqE;AACrE,UAAU,WAAW;IACnB,+CAA+C;IAC/C,KAAK,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC;IAC9E,iCAAiC;IACjC,MAAM,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,CAAC;IAC/B,2CAA2C;IAC3C,SAAS,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,KAAK,IAAI,CAAC;IAC9E,iCAAiC;IACjC,OAAO,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,CAAC;CACjC;AAED;;;;GAIG;AACH,QAAA,MAAM,cAAc,GAAI,MAAM,SAAS,KAAG,WAQzC,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,kBAAkB,GACtB,OAAO,WAAW,EAClB,YAAY,GAAG,CAAC,MAAM,EAAE,wCAAwC,CAAC,EACjE,gBAAgB,iBAAiB,EAAE,KAClC,MAqBF,CAAC;AAEF,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;AAC3C,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,kBAAkB,GACnB,CAAC"}
1
+ {"version":3,"file":"http-routes.d.ts","sourceRoot":"","sources":["../src/http-routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,EAAE,wCAAwC,EAAE,MAAM,+DAA+D,CAAC;AAEzH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAerD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAKxD,OAAO,KAAK,EAAmC,WAAW,EAAE,MAAM,YAAY,CAAC;AAI/E,6DAA6D;AAC7D,KAAK,WAAW,GAAG,MAAM;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,mBAAmB,EAAE,MAAM,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAAC;AAExH,kEAAkE;AAClE,UAAU,SAAS;IACjB,KAAK,EAAE,WAAW,CAAC;IACnB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,wCAAwC,CAAC,CAAC;IAClE,cAAc,EAAE,iBAAiB,EAAE,CAAC;IACpC,WAAW,EAAE,WAAW,CAAC;CAC1B;AAsCD;;;GAGG;AACH,QAAA,MAAM,iBAAiB,GAAI,GAAG,MAAM,EAAE,GAAG,MAAM,KAAG,OAGjD,CAAC;AAEF;;;;;GAKG;AACH,QAAA,MAAM,eAAe,GAAI,KAAK,OAAO,EAAE,UAAU,MAAM,GAAG,IAAI,KAAG,QAAQ,GAAG,IAQ3E,CAAC;AAKF;;;;GAIG;AACH,QAAA,MAAM,eAAe,GAAI,YAAY,MAAM,KAAG,OAa7C,CAAC;AAGF,QAAA,MAAM,sBAAsB,GAAI,OAAO,WAAW,EAAE,UAAU,MAAM,EAAE,cAAc,MAAM,KAAG,OAiB5F,CAAC;AA+CF,uEAAuE;AACvE,UAAU,aAAa;IACrB,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,WAAW,CAAA;KAAE,KAAK,OAAO,CAAC;IACnF,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAClD;AAqjBD,qEAAqE;AACrE,UAAU,WAAW;IACnB,+CAA+C;IAC/C,KAAK,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC;IAC9E,iCAAiC;IACjC,MAAM,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,CAAC;IAC/B,2CAA2C;IAC3C,SAAS,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,KAAK,IAAI,CAAC;IAC9E,iCAAiC;IACjC,OAAO,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,CAAC;CACjC;AAED;;;;GAIG;AACH,QAAA,MAAM,cAAc,GAAI,MAAM,SAAS,KAAG,WAQzC,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,kBAAkB,GACtB,OAAO,WAAW,EAClB,YAAY,GAAG,CAAC,MAAM,EAAE,wCAAwC,CAAC,EACjE,gBAAgB,iBAAiB,EAAE,KAClC,MAqBF,CAAC;AAEF,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;AAC3C,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,kBAAkB,GACnB,CAAC"}
@@ -25,7 +25,7 @@ import { createMcpServer, notifyToolListChanged } from './mcp-setup.js';
25
25
  import { performConfigReload } from './reload.js';
26
26
  import { sanitizeErrorMessage } from './sanitize-error.js';
27
27
  import { sdkVersion } from './sdk-version.js';
28
- import { prefixedToolName, STATE_SCHEMA_VERSION } from './state.js';
28
+ import { getMergedTabMapping, isExtensionConnected, prefixedToolName, STATE_SCHEMA_VERSION } from './state.js';
29
29
  import { version } from './version.js';
30
30
  /** Callbacks for extension protocol → MCP server integration */
31
31
  const createMcpCallbacks = (state, sessionServers, transports) => ({
@@ -172,32 +172,45 @@ const handleWsUpgrade = (req, server, state) => {
172
172
  // Authenticate WebSocket connections using a shared secret sent via
173
173
  // the Sec-WebSocket-Protocol header (not URL query params, which leak
174
174
  // into server logs, browser history, and proxy logs).
175
- // The client sends protocols: ['opentabs', '<secret>'] and the server
175
+ // The client sends protocols: ['opentabs', '<secret>', '<connectionId>?'] and the server
176
176
  // echoes 'opentabs' as the accepted subprotocol.
177
177
  // Uses constant-time comparison to prevent timing side-channel attacks.
178
+ const protocols = req.headers.get('sec-websocket-protocol');
179
+ const parts = protocols?.split(',').map(p => p.trim()) ?? [];
180
+ // Parse connectionId: the third protocol part (after 'opentabs' and the secret).
181
+ // Parts that are 'opentabs' or match the secret are excluded; the remaining part is the connectionId.
182
+ let parsedConnectionId;
178
183
  if (state.wsSecret) {
179
- const protocols = req.headers.get('sec-websocket-protocol');
180
- const parts = protocols?.split(',').map(p => p.trim()) ?? [];
181
184
  let secretMatched = false;
182
185
  for (const part of parts) {
183
186
  if (constantTimeEqual(part, state.wsSecret)) {
184
187
  secretMatched = true;
185
188
  }
189
+ else if (part !== 'opentabs' && !parsedConnectionId) {
190
+ parsedConnectionId = part;
191
+ }
186
192
  }
187
193
  if (!secretMatched) {
188
194
  return new Response('Unauthorized', { status: 401 });
189
195
  }
190
- const upgraded = server.upgrade(req, {
191
- data: undefined,
192
- headers: { 'sec-websocket-protocol': 'opentabs' },
193
- });
194
- if (!upgraded) {
195
- return new Response('WebSocket upgrade failed', { status: 400 });
196
+ }
197
+ else {
198
+ for (const part of parts) {
199
+ if (part !== 'opentabs' && !parsedConnectionId) {
200
+ parsedConnectionId = part;
201
+ }
196
202
  }
197
- return undefined;
198
203
  }
199
- const upgraded = server.upgrade(req, { data: undefined });
204
+ // Store the parsed connectionId so createHandleWsOpen can retrieve it.
205
+ // Only set when the client explicitly sent one — the open handler generates a fallback UUID otherwise.
206
+ // This distinction lets the open handler detect backwards-compatible single-connection clients.
207
+ state._pendingConnectionId = parsedConnectionId;
208
+ const upgraded = server.upgrade(req, {
209
+ data: undefined,
210
+ headers: state.wsSecret ? { 'sec-websocket-protocol': 'opentabs' } : undefined,
211
+ });
200
212
  if (!upgraded) {
213
+ state._pendingConnectionId = undefined;
201
214
  return new Response('WebSocket upgrade failed', { status: 400 });
202
215
  }
203
216
  return undefined;
@@ -220,7 +233,7 @@ const handleHealth = async (req, state, transports, getHotState) => {
220
233
  // Query the extension for live tab state when connected. Falls back to the
221
234
  // server's stale tabMapping cache on timeout (1s) or error.
222
235
  let liveTabStates = null;
223
- if (state.extensionWs) {
236
+ if (isExtensionConnected(state)) {
224
237
  try {
225
238
  const result = (await queryExtension(state, 'extension.getTabState', {}, 1000));
226
239
  if (result.tabStates && typeof result.tabStates === 'object') {
@@ -231,9 +244,10 @@ const handleHealth = async (req, state, transports, getHotState) => {
231
244
  // Timeout or error — fall back to tabMapping cache
232
245
  }
233
246
  }
247
+ const mergedTabs = getMergedTabMapping(state);
234
248
  const pluginDetails = [...state.registry.plugins.values()].map(p => {
235
249
  const liveInfo = liveTabStates?.[p.name];
236
- const tabInfo = liveInfo ?? state.tabMapping.get(p.name);
250
+ const tabInfo = liveInfo ?? mergedTabs.get(p.name);
237
251
  return {
238
252
  name: p.name,
239
253
  displayName: p.displayName,
@@ -264,7 +278,8 @@ const handleHealth = async (req, state, transports, getHotState) => {
264
278
  version,
265
279
  sdkVersion,
266
280
  mode: isDev() ? 'dev' : 'production',
267
- extensionConnected: state.extensionWs !== null,
281
+ extensionConnected: isExtensionConnected(state),
282
+ extensionConnections: state.extensionConnections.size,
268
283
  mcpClients: transports.size,
269
284
  plugins: state.registry.plugins.size,
270
285
  pluginDetails,
@@ -341,7 +356,7 @@ const handleExtensionReload = (req, state) => {
341
356
  if (!checkEndpointRateLimit(state, '/extension/reload', 10)) {
342
357
  return new Response('Too Many Requests', { status: 429, headers: { 'Retry-After': '60' } });
343
358
  }
344
- if (!state.extensionWs) {
359
+ if (!isExtensionConnected(state)) {
345
360
  return Response.json({ ok: false, error: 'Extension not connected' }, { status: 503 });
346
361
  }
347
362
  sendExtensionReload(state);
@@ -537,29 +552,47 @@ const createHandleFetch = ({ state, transports, sessionServers, getHotState }) =
537
552
  return new Response('Not Found', { status: 404 });
538
553
  };
539
554
  const createHandleWsOpen = (state) => (ws) => {
540
- const previousWs = state.extensionWs;
541
- // Assign the new WS BEFORE closing the previous one. The close handler
542
- // may fire synchronously during ws.close(), so if extensionWs
543
- // still pointed at the old WS the close handler would see
544
- // `state.extensionWs === ws` (true) and reject all pending dispatches
545
- // with "Extension disconnected" even though a new connection is
546
- // already taking over.
547
- log.info('Extension WebSocket connected');
548
- state.extensionWs = ws;
549
- if (previousWs && previousWs !== ws) {
550
- log.info('Closing previous extension WebSocket (replaced by new connection)');
555
+ // Consume the connectionId set during upgrade, falling back to a random UUID.
556
+ // Track whether the connectionId was explicitly provided by the client (via subprotocol).
557
+ const hasExplicitId = state._pendingConnectionId !== undefined;
558
+ const connectionId = state._pendingConnectionId ?? crypto.randomUUID();
559
+ state._pendingConnectionId = undefined;
560
+ // If a connection with the same connectionId already exists, close the old one (same-profile reconnect)
561
+ const existing = state.extensionConnections.get(connectionId);
562
+ if (existing && existing.ws !== ws) {
563
+ log.info(`Closing previous extension WebSocket (replaced by same-profile reconnect, connectionId: ${connectionId})`);
551
564
  try {
552
- previousWs.close(1000, 'Replaced by new connection');
565
+ existing.ws.close(1000, 'Replaced by same-profile reconnect');
553
566
  }
554
567
  catch {
555
568
  // Already closed
556
569
  }
557
570
  }
571
+ // When the connectionId is auto-generated (client did not send one), assume single-connection
572
+ // mode for backwards compatibility: close the existing connection if there is exactly one.
573
+ if (!hasExplicitId && state.extensionConnections.size === 1) {
574
+ const [existingId, existingConn] = state.extensionConnections.entries().next().value;
575
+ if (existingConn.ws !== ws) {
576
+ log.info('Closing previous extension WebSocket (replaced by new connection without connectionId)');
577
+ try {
578
+ existingConn.ws.close(1000, 'Replaced by new connection');
579
+ }
580
+ catch {
581
+ // Already closed
582
+ }
583
+ state.extensionConnections.delete(existingId);
584
+ }
585
+ }
586
+ const conn = {
587
+ ws,
588
+ connectionId,
589
+ tabMapping: new Map(),
590
+ activeNetworkCaptures: new Set(),
591
+ };
592
+ state.extensionConnections.set(connectionId, conn);
593
+ log.info(`Extension WebSocket connected (connectionId: ${connectionId})`);
558
594
  void sendSyncFull(state)
559
595
  .then(() => {
560
- // After sync.full completes, check if there's a pending extension reload
561
- // (extension files were updated while extension was disconnected).
562
- // The delay ensures sync.full is processed before the extension reloads.
563
596
  if (state.pendingExtensionReload) {
564
597
  state.pendingExtensionReload = false;
565
598
  log.info('Sending deferred extension reload (version was updated while extension was disconnected)');
@@ -582,27 +615,44 @@ const createHandleWsMessage = (state, mcpCallbacks) => (ws, message) => {
582
615
  handleExtensionMessage(state, text, mcpCallbacks, ws);
583
616
  };
584
617
  const createHandleWsClose = (state) => (ws) => {
585
- log.info('Extension WebSocket disconnected');
586
- if (state.extensionWs === ws) {
587
- state.extensionWs = null;
588
- // Clear network capture and tab mapping state — those sessions are gone
589
- // when the extension disconnects and stale entries would cause dispatches
590
- // to tabs that no longer exist.
591
- state.activeNetworkCaptures.clear();
592
- state.tabMapping.clear();
593
- // Reject all pending confirmations immediately so tool dispatch promises
594
- // resolve with an error instead of hanging until confirmation timeout.
595
- rejectAllPendingConfirmations(state);
596
- // Reject all pending dispatches immediately so MCP clients get a fast
597
- // error instead of hanging until the 30-second dispatch timeout fires.
618
+ // Find which connection this ws belongs to
619
+ let closedConn;
620
+ for (const [id, conn] of state.extensionConnections) {
621
+ if (conn.ws === ws) {
622
+ closedConn = conn;
623
+ state.extensionConnections.delete(id);
624
+ break;
625
+ }
626
+ }
627
+ if (closedConn) {
628
+ log.info(`Extension WebSocket disconnected (connectionId: ${closedConn.connectionId})`);
629
+ // Reject pending dispatches sent over this connection.
630
+ // Dispatches with matching connectionId are always rejected.
631
+ // Dispatches without a connectionId (legacy) are rejected only when no connections remain.
598
632
  if (state.pendingDispatches.size > 0) {
599
- log.info(`Rejecting ${state.pendingDispatches.size} pending dispatch(es) due to extension disconnect`);
633
+ const noConnectionsLeft = state.extensionConnections.size === 0;
634
+ let rejectedCount = 0;
600
635
  for (const [id, pending] of state.pendingDispatches) {
601
- state.pendingDispatches.delete(id);
602
- clearTimeout(pending.timerId);
603
- pending.reject(new Error('Extension disconnected'));
636
+ const isOwnedByClosedConn = pending.connectionId === closedConn.connectionId;
637
+ const isLegacyDispatch = pending.connectionId === undefined;
638
+ if (isOwnedByClosedConn || (isLegacyDispatch && noConnectionsLeft)) {
639
+ state.pendingDispatches.delete(id);
640
+ clearTimeout(pending.timerId);
641
+ pending.reject(new Error('Extension disconnected'));
642
+ rejectedCount++;
643
+ }
644
+ }
645
+ if (rejectedCount > 0) {
646
+ log.info(`Rejected ${rejectedCount} pending dispatch(es) for connection ${closedConn.connectionId}`);
604
647
  }
605
648
  }
649
+ // Reject all pending confirmations only if no connections remain
650
+ if (state.extensionConnections.size === 0) {
651
+ rejectAllPendingConfirmations(state);
652
+ }
653
+ }
654
+ else {
655
+ log.info('Extension WebSocket disconnected (unknown connection)');
606
656
  }
607
657
  };
608
658
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"http-routes.js","sourceRoot":"","sources":["../src/http-routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-routes.js","sourceRoot":"","sources":["../src/http-routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,wCAAwC,EAAE,MAAM,+DAA+D,CAAC;AACzH,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAEzE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAEnF,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,6BAA6B,EAC7B,mBAAmB,EACnB,YAAY,GACb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAC/G,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAavC,gEAAgE;AAChE,MAAM,kBAAkB,GAAG,CACzB,KAAkB,EAClB,cAAmC,EACnC,UAAiE,EACnD,EAAE,CAAC,CAAC;IAClB,mBAAmB,EAAE,GAAG,EAAE;QACxB,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;YACjC,qBAAqB,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IACD,0BAA0B,EAAE,GAAG,EAAE;QAC/B,qBAAqB,CAAC,KAAK,EAAE,EAAE,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACtE,qEAAqE;QACvE,CAAC,CAAC,CAAC;IACL,CAAC;IACD,WAAW,EAAE,KAAK,CAAC,EAAE;QACnB,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC;QAC7B,MAAM,MAAM,GAAG,UAAU,KAAK,CAAC,MAAM,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;QAEzG,mEAAmE;QACnE,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjF,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,EAAE,IAAI,QAAQ,IAAI,KAAK,CAAC,OAAO,GAAG,OAAO,EAAE,CAAC,CAAC;QAE3F,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;YACjC,GAAG,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBACnE,6CAA6C;YAC/C,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,QAAQ,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,KAAK,EAAE,cAAc,EAAE,UAAU,CAAC;IACtE,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC;CACrG,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,iBAAiB,GAAG,CAAC,CAAS,EAAE,CAAS,EAAW,EAAE;IAC1D,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACxC,OAAO,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,eAAe,GAAG,CAAC,GAAY,EAAE,QAAuB,EAAmB,EAAE;IACjF,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7E,IAAI,CAAC,KAAK,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC;QAClD,OAAO,IAAI,QAAQ,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,uEAAuE;AACvE,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC;AAErF;;;;GAIG;AACH,MAAM,eAAe,GAAG,CAAC,UAAkB,EAAW,EAAE;IACtD,IAAI,QAAgB,CAAC;IACrB,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/B,6CAA6C;QAC7C,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAI,YAAY,KAAK,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QACtC,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;IAC/C,CAAC;SAAM,CAAC;QACN,8DAA8D;QAC9D,MAAM,QAAQ,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC7C,QAAQ,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF,qDAAqD;AACrD,MAAM,sBAAsB,GAAG,CAAC,KAAkB,EAAE,QAAgB,EAAE,YAAoB,EAAW,EAAE;IACrG,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;IACpG,6FAA6F;IAC7F,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,sBAAsB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,IAAI,YAAY,EAAE,CAAC;QACtC,mFAAmF;QACnF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,KAAK,CAAC,sBAAsB,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrB,KAAK,CAAC,sBAAsB,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACvD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,mEAAmE;AACnE,MAAM,mBAAmB,GAAG,CAAC,QAAsB,EAAE,EAAE;IACrD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC;IACzC,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,IAAI,cAAc,GAAG,CAAC,CAAC;IAEvB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC;IAEvC,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC7B,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,YAAY,EAAE,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,YAAY,EAAE,CAAC;QACjB,CAAC;QACD,eAAe,IAAI,KAAK,CAAC,UAAU,CAAC;QAEpC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,IAAI,MAAM,EAAE,CAAC;YAClD,YAAY,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBAClB,cAAc,EAAE,CAAC;YACnB,CAAC;iBAAM,CAAC;gBACN,cAAc,EAAE,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,aAAa,GAAG,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,GAAG,gBAAgB,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAE5G,OAAO;QACL,gBAAgB;QAChB,YAAY;QACZ,YAAY;QACZ,OAAO,EAAE;YACP,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE,cAAc;YACvB,OAAO,EAAE,cAAc;SACxB;QACD,aAAa;KACd,CAAC;AACJ,CAAC,CAAC;AAQF,mCAAmC;AACnC,qEAAqE;AACrE,6EAA6E;AAE7E,wDAAwD;AACxD,MAAM,eAAe,GAAG,CAAC,GAAY,EAAE,MAAqB,EAAE,KAAkB,EAAwB,EAAE;IACxG,oEAAoE;IACpE,sEAAsE;IACtE,sDAAsD;IACtD,yFAAyF;IACzF,iDAAiD;IACjD,wEAAwE;IACxE,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IAC5D,MAAM,KAAK,GAAG,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;IAE7D,iFAAiF;IACjF,sGAAsG;IACtG,IAAI,kBAAsC,CAAC;IAC3C,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnB,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5C,aAAa,GAAG,IAAI,CAAC;YACvB,CAAC;iBAAM,IAAI,IAAI,KAAK,UAAU,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACtD,kBAAkB,GAAG,IAAI,CAAC;YAC5B,CAAC;QACH,CAAC;QACD,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,IAAI,QAAQ,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,IAAI,KAAK,UAAU,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC/C,kBAAkB,GAAG,IAAI,CAAC;YAC5B,CAAC;QACH,CAAC;IACH,CAAC;IAED,uEAAuE;IACvE,uGAAuG;IACvG,gGAAgG;IAChG,KAAK,CAAC,oBAAoB,GAAG,kBAAkB,CAAC;IAEhD,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;QACnC,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,wBAAwB,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS;KAC/E,CAAC,CAAC;IACH,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,KAAK,CAAC,oBAAoB,GAAG,SAAS,CAAC;QACvC,OAAO,IAAI,QAAQ,CAAC,0BAA0B,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,0EAA0E;AAC1E,MAAM,YAAY,GAAG,CAAC,GAAY,EAAE,GAAQ,EAAE,KAAkB,EAAY,EAAE;IAC5E,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACvD,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAChC,MAAM,KAAK,GAAG,QAAQ,GAAG,CAAC,IAAI,KAAK,CAAC;IACpC,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AAClC,CAAC,CAAC;AAEF,oCAAoC;AACpC,MAAM,YAAY,GAAG,KAAK,EACxB,GAAY,EACZ,KAAkB,EAClB,UAAiE,EACjE,WAAwB,EACL,EAAE;IACrB,MAAM,aAAa,GAAG,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;IAEpE,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,oBAAoB,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;IAED,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IAEzB,2EAA2E;IAC3E,4DAA4D;IAC5D,IAAI,aAAa,GAA8D,IAAI,CAAC;IACpF,IAAI,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,CAAC,MAAM,cAAc,CAAC,KAAK,EAAE,uBAAuB,EAAE,EAAE,EAAE,IAAI,CAAC,CAE7E,CAAC;YACF,IAAI,MAAM,CAAC,SAAS,IAAI,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;gBAC7D,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC;YACnC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,mDAAmD;QACrD,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,aAAa,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QACjE,MAAM,QAAQ,GAAG,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,QAAQ,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACnD,OAAO;YACL,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM;YACzB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YACzD,QAAQ,EAAE,OAAO,EAAE,KAAK,IAAI,QAAQ;YACpC,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE;YACzB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,IAAI;YAChC,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;YAClC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7C,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC;IACzD,MAAM,eAAe,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC;IACvD,MAAM,SAAS,GAAG,eAAe,GAAG,gBAAgB,CAAC;IACrD,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;IAExE,MAAM,cAAc,GAAG,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC;IAC3G,MAAM,cAAc,GAAG,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,GAAG,cAAc,CAAC;IAE1E,MAAM,YAAY,GAAG,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAEzD,MAAM,aAAa,GAAG,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC;IACtD,MAAM,oBAAoB,GAAG,KAAK,CAAC,kBAAkB;SAClD,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,aAAa,EAAE,UAAU,IAAI,KAAK,CAAC,KAAK,KAAK,CAAC;SAC7F,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAEpB,MAAM,gBAAgB,GAAG,KAAK,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAEnE,OAAO,QAAQ,CAAC,IAAI,CAClB;QACE,MAAM,EAAE,IAAI;QACZ,OAAO;QACP,UAAU;QACV,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY;QACpC,kBAAkB,EAAE,oBAAoB,CAAC,KAAK,CAAC;QAC/C,oBAAoB,EAAE,KAAK,CAAC,oBAAoB,CAAC,IAAI;QACrD,UAAU,EAAE,UAAU,CAAC,IAAI;QAC3B,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI;QACpC,aAAa;QACb,aAAa,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC3C,eAAe,EAAE,CAAC,GAAG,KAAK,CAAC,eAAe,CAAC;QAC3C,SAAS;QACT,gBAAgB;QAChB,eAAe;QACf,gBAAgB;QAChB,oBAAoB;QACpB,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,MAAM,EAAE,aAAa;QACrB,WAAW,EAAE,EAAE,EAAE,WAAW,IAAI,CAAC;QACjC,mBAAmB,EAAE,EAAE,EAAE,mBAAmB,IAAI,CAAC;QACjD,oBAAoB,EAAE,EAAE,EAAE,oBAAoB,IAAI,CAAC;QACnD,kBAAkB,EAAE,oBAAoB;QACxC,WAAW,EAAE;YACX,cAAc;YACd,cAAc;YACd,UAAU,EAAE,KAAK,CAAC,YAAY,CAAC,eAAe;YAC9C,cAAc,EAAE,KAAK,CAAC,YAAY,CAAC,mBAAmB;SACvD;QACD,YAAY;KACb,EACD,EAAE,OAAO,EAAE,EAAE,oBAAoB,EAAE,OAAO,EAAE,EAAE,CAC/C,CAAC;AACJ,CAAC,CAAC;AAEF,sCAAsC;AACtC,MAAM,WAAW,GAAG,CAAC,GAAQ,EAAE,KAAkB,EAAE,GAAY,EAAY,EAAE;IAC3E,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACvD,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAEhC,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;IACvE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IACrF,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,UAAU,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACrD,MAAM,aAAa,GAAG,YAAY,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAEpG,IAAI,OAAO,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;IAC5C,IAAI,YAAY;QAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,YAAY,CAAC,CAAC;IAC3E,IAAI,UAAU;QAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;IACrE,IAAI,aAAa,KAAK,SAAS;QAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,aAAa,CAAC,CAAC;IAC5F,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAElC,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF,wDAAwD;AACxD,MAAM,YAAY,GAAG,KAAK,EACxB,GAAY,EACZ,KAAkB,EAClB,cAAmC,EACnC,UAAiE,EAC9C,EAAE;IACrB,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACvD,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAChC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,CAAC;QAClD,OAAO,IAAI,QAAQ,CAAC,mBAAmB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IAC9F,CAAC;IACD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,KAAK,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;QAC5E,OAAO,QAAQ,CAAC,IAAI,CAAC;YACnB,EAAE,EAAE,IAAI;YACR,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,UAAU,EAAE,MAAM,CAAC,UAAU;SAC9B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QACnC,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,oBAAoB,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAC5F,CAAC;AACH,CAAC,CAAC;AAEF,yDAAyD;AACzD,MAAM,qBAAqB,GAAG,CAAC,GAAY,EAAE,KAAkB,EAAY,EAAE;IAC3E,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACvD,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAChC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,mBAAmB,EAAE,EAAE,CAAC,EAAE,CAAC;QAC5D,OAAO,IAAI,QAAQ,CAAC,mBAAmB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IAC9F,CAAC;IACD,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IACzF,CAAC;IACD,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC3B,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,iCAAiC,EAAE,CAAC,CAAC;AACjF,CAAC,CAAC;AAEF,6DAA6D;AAC7D,MAAM,SAAS,GAAG,KAAK,EACrB,GAAY,EACZ,MAAqB,EACrB,KAAkB,EAClB,UAAiE,EACjE,cAAmC,EAChB,EAAE;IACrB,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACvD,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAChC,wDAAwD;IACxD,mEAAmE;IACnE,mEAAmE;IACnE,iEAAiE;IACjE,sDAAsD;IACtD,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IAEvB,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAEpD,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC1B,mBAAmB;QACnB,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,iBAAiB,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACpD,IAAI,iBAAiB,EAAE,CAAC;gBACtB,OAAO,iBAAiB,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;QAED,2EAA2E;QAC3E,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,qBAAqB,EAAE,CAAC,CAAC,EAAE,CAAC;YAC7D,OAAO,IAAI,QAAQ,CAAC,mBAAmB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QAC9F,CAAC;QAED,sCAAsC;QACtC,MAAM,IAAI,GAAY,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QACzD,IAAI,IAAI,IAAI,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;YACtC,IAAI,aAAa,GAA6B,IAAI,CAAC;YAEnD,MAAM,aAAa,GAAG,GAAS,EAAE;gBAC/B,IAAI,aAAa,EAAE,CAAC;oBAClB,MAAM,GAAG,GAAG,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;oBAClD,IAAI,GAAG,KAAK,CAAC,CAAC;wBAAE,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;oBAC9C,aAAa,GAAG,IAAI,CAAC;gBACvB,CAAC;YACH,CAAC,CAAC;YAEF,MAAM,SAAS,GAAG,IAAI,wCAAwC,CAAC;gBAC7D,kBAAkB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE;gBAC7C,oBAAoB,EAAE,CAAC,GAAW,EAAE,EAAE;oBACpC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;oBAC/B,qEAAqE;oBACrE,IAAI,aAAa,EAAE,CAAC;wBAClB,KAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;oBACpD,CAAC;oBACD,GAAG,CAAC,IAAI,CAAC,kCAAkC,GAAG,GAAG,CAAC,CAAC;gBACrD,CAAC;gBACD,eAAe,EAAE,CAAC,GAAW,EAAE,EAAE;oBAC/B,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACvB,aAAa,EAAE,CAAC;oBAChB,GAAG,CAAC,IAAI,CAAC,qCAAqC,GAAG,GAAG,CAAC,CAAC;gBACxD,CAAC;aACF,CAAC,CAAC;YAEH,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE;gBACvB,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;oBACxB,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;gBACzC,CAAC;gBACD,aAAa,EAAE,CAAC;YAClB,CAAC,CAAC;YAEF,IAAI,CAAC;gBACH,aAAa,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,CAAC;gBAC7C,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBACnC,MAAM,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACvC,OAAO,MAAM,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;YAClE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,aAAa,EAAE,CAAC;gBAChB,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAClB;YACE,OAAO,EAAE,KAAK;YACd,KAAK,EAAE;gBACL,IAAI,EAAE,CAAC,KAAK;gBACZ,OAAO,EAAE,2DAA2D;aACrE;YACD,EAAE,EAAE,IAAI;SACT,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAC;IACJ,CAAC;IAED,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;QACzB,MAAM,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,IAAI,QAAQ,CAAC,4BAA4B,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,IAAI,QAAQ,CAAC,4BAA4B,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,OAAO,IAAI,QAAQ,CAAC,oBAAoB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;AAC7D,CAAC,CAAC;AAEF,iFAAiF;AACjF,MAAM,qBAAqB,GAAG,KAAK,EAAE,GAAY,EAAE,KAAkB,EAAqB,EAAE;IAC1F,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACvD,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAEhC,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAoC,CAAC;IACnE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;QACzC,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,+BAA+B,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,eAA+C,CAAC;IAE7E,eAAe,CAAC,KAAK,EAAE;QACrB,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,iBAAiB;QACzB,MAAM,EAAE,EAAE,GAAG,uBAAuB,CAAC,KAAK,CAAC,EAAE;KAC9C,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,wBAAwB,GAAG,KAAK,EAAE,GAAY,EAAE,KAAkB,EAAqB,EAAE;IAC7F,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACvD,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAEhC,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAiD,CAAC;IAChF,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC/E,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,kCAAkC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAClG,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,IAAI,CAAC,UAAU,aAAa,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IACvG,CAAC;IAED,+EAA+E;IAC9E,MAA8B,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC;IAE1D,yDAAyD;IACzD,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,cAAc,CAAC,CAAC;IAE5F,eAAe,CAAC,KAAK,EAAE;QACrB,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,iBAAiB;QACzB,MAAM,EAAE,EAAE,GAAG,uBAAuB,CAAC,KAAK,CAAC,EAAE;KAC9C,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF,sBAAsB;AAEtB,MAAM,iBAAiB,GACrB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAa,EAAE,EAAE,CAClE,KAAK,EAAE,GAAY,EAAE,MAAqB,EAAiC,EAAE;IAC3E,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE7B,4DAA4D;IAC5D,oEAAoE;IACpE,uEAAuE;IACvE,yEAAyE;IACzE,4DAA4D;IAC5D,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3C,IAAI,CAAC,UAAU,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE,CAAC;QAChD,OAAO,IAAI,QAAQ,CAAC,gCAAgC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,0BAA0B;IAC1B,uEAAuE;IACvE,wEAAwE;IACxE,oEAAoE;IACpE,EAAE;IACF,wEAAwE;IACxE,kEAAkE;IAClE,8DAA8D;IAC9D,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACxD,OAAO,IAAI,QAAQ,CAAC,6CAA6C,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IACtF,CAAC;IAED,IAAI,GAAG,CAAC,QAAQ,KAAK,KAAK;QAAE,OAAO,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACvE,IAAI,GAAG,CAAC,QAAQ,KAAK,UAAU,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK;QAAE,OAAO,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAC9F,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK;QAAE,OAAO,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;IACjH,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK;QAAE,OAAO,WAAW,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAC3F,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM;QACrD,OAAO,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;IAC9D,IAAI,GAAG,CAAC,QAAQ,KAAK,mBAAmB,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM;QAAE,OAAO,qBAAqB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC5G,IAAI,GAAG,CAAC,QAAQ,KAAK,sBAAsB,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM;QAAE,OAAO,qBAAqB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC/G,IAAI,GAAG,CAAC,QAAQ,KAAK,yBAAyB,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM;QACrE,OAAO,wBAAwB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC9C,IAAI,GAAG,CAAC,QAAQ,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;IAE9F,OAAO,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;AACpD,CAAC,CAAC;AAEJ,MAAM,kBAAkB,GACtB,CAAC,KAAkB,EAAE,EAAE,CACvB,CAAC,EAAY,EAAQ,EAAE;IACrB,8EAA8E;IAC9E,0FAA0F;IAC1F,MAAM,aAAa,GAAG,KAAK,CAAC,oBAAoB,KAAK,SAAS,CAAC;IAC/D,MAAM,YAAY,GAAG,KAAK,CAAC,oBAAoB,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;IACvE,KAAK,CAAC,oBAAoB,GAAG,SAAS,CAAC;IAEvC,wGAAwG;IACxG,MAAM,QAAQ,GAAG,KAAK,CAAC,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC9D,IAAI,QAAQ,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;QACnC,GAAG,CAAC,IAAI,CACN,2FAA2F,YAAY,GAAG,CAC3G,CAAC;QACF,IAAI,CAAC;YACH,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,oCAAoC,CAAC,CAAC;QAChE,CAAC;QAAC,MAAM,CAAC;YACP,iBAAiB;QACnB,CAAC;IACH,CAAC;IAED,8FAA8F;IAC9F,2FAA2F;IAC3F,IAAI,CAAC,aAAa,IAAI,KAAK,CAAC,oBAAoB,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QAC5D,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,oBAAoB,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAG9E,CAAC;QACF,IAAI,YAAY,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;YAC3B,GAAG,CAAC,IAAI,CAAC,wFAAwF,CAAC,CAAC;YACnG,IAAI,CAAC;gBACH,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,4BAA4B,CAAC,CAAC;YAC5D,CAAC;YAAC,MAAM,CAAC;gBACP,iBAAiB;YACnB,CAAC;YACD,KAAK,CAAC,oBAAoB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAwB;QAChC,EAAE;QACF,YAAY;QACZ,UAAU,EAAE,IAAI,GAAG,EAAE;QACrB,qBAAqB,EAAE,IAAI,GAAG,EAAE;KACjC,CAAC;IACF,KAAK,CAAC,oBAAoB,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IACnD,GAAG,CAAC,IAAI,CAAC,gDAAgD,YAAY,GAAG,CAAC,CAAC;IAE1E,KAAK,YAAY,CAAC,KAAK,CAAC;SACrB,IAAI,CAAC,GAAG,EAAE;QACT,IAAI,KAAK,CAAC,sBAAsB,EAAE,CAAC;YACjC,KAAK,CAAC,sBAAsB,GAAG,KAAK,CAAC;YACrC,GAAG,CAAC,IAAI,CAAC,0FAA0F,CAAC,CAAC;YACrG,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC;oBACH,mBAAmB,CAAC,KAAK,CAAC,CAAC;gBAC7B,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,IAAI,CAAC,yCAAyC,EAAE,GAAG,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC,EAAE,GAAG,CAAC,CAAC;QACV,CAAC;IACH,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;QACtB,GAAG,CAAC,IAAI,CAAC,gEAAgE,EAAE,GAAG,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AAEJ,MAAM,qBAAqB,GACzB,CAAC,KAAkB,EAAE,YAA0B,EAAE,EAAE,CACnD,CAAC,EAAY,EAAE,OAA0C,EAAQ,EAAE;IACjE,MAAM,IAAI,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACvF,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;AACxD,CAAC,CAAC;AAEJ,MAAM,mBAAmB,GACvB,CAAC,KAAkB,EAAE,EAAE,CACvB,CAAC,EAAY,EAAQ,EAAE;IACrB,2CAA2C;IAC3C,IAAI,UAA2C,CAAC;IAChD,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,oBAAoB,EAAE,CAAC;QACpD,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;YACnB,UAAU,GAAG,IAAI,CAAC;YAClB,KAAK,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACtC,MAAM;QACR,CAAC;IACH,CAAC;IAED,IAAI,UAAU,EAAE,CAAC;QACf,GAAG,CAAC,IAAI,CAAC,mDAAmD,UAAU,CAAC,YAAY,GAAG,CAAC,CAAC;QAExF,uDAAuD;QACvD,6DAA6D;QAC7D,2FAA2F;QAC3F,IAAI,KAAK,CAAC,iBAAiB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACrC,MAAM,iBAAiB,GAAG,KAAK,CAAC,oBAAoB,CAAC,IAAI,KAAK,CAAC,CAAC;YAChE,IAAI,aAAa,GAAG,CAAC,CAAC;YACtB,KAAK,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;gBACpD,MAAM,mBAAmB,GAAG,OAAO,CAAC,YAAY,KAAK,UAAU,CAAC,YAAY,CAAC;gBAC7E,MAAM,gBAAgB,GAAG,OAAO,CAAC,YAAY,KAAK,SAAS,CAAC;gBAC5D,IAAI,mBAAmB,IAAI,CAAC,gBAAgB,IAAI,iBAAiB,CAAC,EAAE,CAAC;oBACnE,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACnC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBAC9B,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;oBACpD,aAAa,EAAE,CAAC;gBAClB,CAAC;YACH,CAAC;YACD,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;gBACtB,GAAG,CAAC,IAAI,CAAC,YAAY,aAAa,wCAAwC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;YACvG,CAAC;QACH,CAAC;QAED,iEAAiE;QACjE,IAAI,KAAK,CAAC,oBAAoB,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC1C,6BAA6B,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;IACpE,CAAC;AACH,CAAC,CAAC;AAcJ;;;;GAIG;AACH,MAAM,cAAc,GAAG,CAAC,IAAe,EAAe,EAAE;IACtD,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1F,OAAO;QACL,KAAK,EAAE,iBAAiB,CAAC,IAAI,CAAC;QAC9B,MAAM,EAAE,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC;QACtC,SAAS,EAAE,qBAAqB,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC;QAC1D,OAAO,EAAE,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC;KACzC,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,kBAAkB,GAAG,CACzB,KAAkB,EAClB,UAAiE,EACjE,cAAmC,EAC3B,EAAE;IACV,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACpD,MAAM,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,MAAM,WAAW,GAAG,KAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACvD,uFAAuF;QACvF,kFAAkF;QAClF,qFAAqF;QACrF,IAAI,WAAW,KAAK,SAAS,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9D,cAAc,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC5B,KAAK,EAAE,CAAC;QACV,CAAC;IACH,CAAC;IAED,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,GAAG,CAAC,IAAI,CAAC,SAAS,KAAK,0BAA0B,UAAU,CAAC,IAAI,8BAA8B,CAAC,CAAC;IAClG,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAGF,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,kBAAkB,GACnB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-tool-dispatch.d.ts","sourceRoot":"","sources":["../src/mcp-tool-dispatch.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAYpC,OAAO,KAAK,EAAc,iBAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAe9F;;;GAGG;AACH,QAAA,MAAM,cAAc,GAAI,KAAK,OAAO,EAAE,cAAS,KAAG,OASjD,CAAC;AAEF;;;;;;GAMG;AACH,QAAA,MAAM,qBAAqB,GAAI,MAAM,MAAM,EAAE,SAAS,MAAM,EAAE,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,MAyB9F,CAAC;AAEF,sFAAsF;AACtF,QAAA,MAAM,cAAc,GAAI,KAAK,QAAQ,KAAG,MAMvC,CAAC;AAEF,mFAAmF;AACnF,UAAU,cAAc;IACtB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,8DAA8D;AAC9D,UAAU,mBAAmB;IAC3B,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAC5C,gBAAgB,EAAE,CAAC,YAAY,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACzG;AAED,uEAAuE;AACvE,UAAU,iBAAiB;IACzB,mBAAmB,EAAE,MAAM,IAAI,CAAC;CACjC;AAmED;;;GAGG;AACH,QAAA,MAAM,qBAAqB,GACzB,OAAO,WAAW,EAClB,UAAU,MAAM,EAChB,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,UAAU,iBAAiB,EAC3B,OAAO,mBAAmB,EAC1B,WAAW,iBAAiB,KAC3B,OAAO,CAAC,cAAc,CA4DxB,CAAC;AAEF;;;;;GAKG;AACH,QAAA,MAAM,oBAAoB,GACxB,OAAO,WAAW,EAClB,UAAU,MAAM,EAChB,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,YAAY,MAAM,EAClB,cAAc,MAAM,EACpB,QAAQ,eAAe,EACvB,OAAO,mBAAmB,EAC1B,WAAW,iBAAiB,KAC3B,OAAO,CAAC,cAAc,CA8MxB,CAAC;AAEF,gEAAgE;AAChE,QAAA,MAAM,eAAe,k1IAuDgD,CAAC;AAEtE;;;GAGG;AACH,QAAA,MAAM,mBAAmB,GAAU,OAAO,WAAW,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,cAAc,CA2E5G,CAAC;AAKF;;;;GAIG;AACH,QAAA,MAAM,wBAAwB,GAC5B,OAAO,WAAW,EAClB,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,WAAW,iBAAiB,KAC3B,OAAO,CAAC,cAAc,CAoGxB,CAAC;AAEF,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,CAAC;AACvE,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,eAAe,GAChB,CAAC"}
1
+ {"version":3,"file":"mcp-tool-dispatch.d.ts","sourceRoot":"","sources":["../src/mcp-tool-dispatch.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAYpC,OAAO,KAAK,EAAc,iBAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAe9F;;;GAGG;AACH,QAAA,MAAM,cAAc,GAAI,KAAK,OAAO,EAAE,cAAS,KAAG,OASjD,CAAC;AAEF;;;;;;GAMG;AACH,QAAA,MAAM,qBAAqB,GAAI,MAAM,MAAM,EAAE,SAAS,MAAM,EAAE,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,MAyB9F,CAAC;AAEF,sFAAsF;AACtF,QAAA,MAAM,cAAc,GAAI,KAAK,QAAQ,KAAG,MAMvC,CAAC;AAEF,mFAAmF;AACnF,UAAU,cAAc;IACtB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,8DAA8D;AAC9D,UAAU,mBAAmB;IAC3B,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAC5C,gBAAgB,EAAE,CAAC,YAAY,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACzG;AAED,uEAAuE;AACvE,UAAU,iBAAiB;IACzB,mBAAmB,EAAE,MAAM,IAAI,CAAC;CACjC;AA0ED;;;GAGG;AACH,QAAA,MAAM,qBAAqB,GACzB,OAAO,WAAW,EAClB,UAAU,MAAM,EAChB,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,UAAU,iBAAiB,EAC3B,OAAO,mBAAmB,EAC1B,WAAW,iBAAiB,KAC3B,OAAO,CAAC,cAAc,CA4DxB,CAAC;AAEF;;;;;GAKG;AACH,QAAA,MAAM,oBAAoB,GACxB,OAAO,WAAW,EAClB,UAAU,MAAM,EAChB,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,YAAY,MAAM,EAClB,cAAc,MAAM,EACpB,QAAQ,eAAe,EACvB,OAAO,mBAAmB,EAC1B,WAAW,iBAAiB,KAC3B,OAAO,CAAC,cAAc,CA8MxB,CAAC;AAEF,gEAAgE;AAChE,QAAA,MAAM,eAAe,k1IAuDgD,CAAC;AAEtE;;;GAGG;AACH,QAAA,MAAM,mBAAmB,GAAU,OAAO,WAAW,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,cAAc,CA2E5G,CAAC;AAKF;;;;GAIG;AACH,QAAA,MAAM,wBAAwB,GAC5B,OAAO,WAAW,EAClB,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,WAAW,iBAAiB,KAC3B,OAAO,CAAC,cAAc,CAoGxB,CAAC;AAEF,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,CAAC;AACvE,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,eAAe,GAChB,CAAC"}
@@ -128,6 +128,12 @@ const runAskFlow = async (state, pluginName, toolName, params, extra, callbacks)
128
128
  state.pluginPermissions[pluginName] = updatedConfig;
129
129
  void savePluginPermissions(state, state.pluginPermissions);
130
130
  callbacks.onToolConfigChanged();
131
+ // Notify the extension so the side panel reflects the new permission
132
+ sendToExtension(state, {
133
+ jsonrpc: '2.0',
134
+ method: 'plugins.changed',
135
+ params: { ...buildConfigStatePayload(state) },
136
+ });
131
137
  }
132
138
  return 'allow';
133
139
  };
@@ -307,7 +313,7 @@ const handlePluginToolCall = async (state, toolName, args, pluginName, toolBaseN
307
313
  let errorInfo;
308
314
  try {
309
315
  state.activeDispatches.set(pluginName, currentDispatches + 1);
310
- if (!state.extensionWs) {
316
+ if (state.extensionConnections.size === 0) {
311
317
  success = false;
312
318
  return {
313
319
  content: [