@opentabs-dev/browser-extension 0.0.53 → 0.0.54

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 (58) hide show
  1. package/dist/background-message-handlers.d.ts +10 -4
  2. package/dist/background-message-handlers.d.ts.map +1 -1
  3. package/dist/background-message-handlers.js +110 -37
  4. package/dist/background-message-handlers.js.map +1 -1
  5. package/dist/background.js +392 -374
  6. package/dist/browser-commands/extension-commands.d.ts.map +1 -1
  7. package/dist/browser-commands/extension-commands.js +5 -2
  8. package/dist/browser-commands/extension-commands.js.map +1 -1
  9. package/dist/browser-commands/key-press-command.d.ts +2 -0
  10. package/dist/browser-commands/key-press-command.d.ts.map +1 -1
  11. package/dist/browser-commands/key-press-command.js +42 -4
  12. package/dist/browser-commands/key-press-command.js.map +1 -1
  13. package/dist/confirmation-badge.d.ts +15 -1
  14. package/dist/confirmation-badge.d.ts.map +1 -1
  15. package/dist/confirmation-badge.js +13 -8
  16. package/dist/confirmation-badge.js.map +1 -1
  17. package/dist/dispatch-helpers.d.ts +1 -1
  18. package/dist/extension-messages.d.ts +1 -17
  19. package/dist/extension-messages.d.ts.map +1 -1
  20. package/dist/known-methods.d.ts +2 -2
  21. package/dist/known-methods.d.ts.map +1 -1
  22. package/dist/known-methods.js +0 -2
  23. package/dist/known-methods.js.map +1 -1
  24. package/dist/message-router.d.ts.map +1 -1
  25. package/dist/message-router.js +52 -21
  26. package/dist/message-router.js.map +1 -1
  27. package/dist/offscreen/index.js +6 -5
  28. package/dist/offscreen/index.js.map +1 -1
  29. package/dist/server-request.js +1 -1
  30. package/dist/server-request.js.map +1 -1
  31. package/dist/server-state-cache.d.ts +30 -3
  32. package/dist/server-state-cache.d.ts.map +1 -1
  33. package/dist/server-state-cache.js +139 -6
  34. package/dist/server-state-cache.js.map +1 -1
  35. package/dist/side-panel/App.d.ts.map +1 -1
  36. package/dist/side-panel/App.js +37 -4
  37. package/dist/side-panel/App.js.map +1 -1
  38. package/dist/side-panel/bridge.d.ts +12 -1
  39. package/dist/side-panel/bridge.d.ts.map +1 -1
  40. package/dist/side-panel/bridge.js.map +1 -1
  41. package/dist/side-panel/components/ConfirmationDialog.d.ts +7 -2
  42. package/dist/side-panel/components/ConfirmationDialog.d.ts.map +1 -1
  43. package/dist/side-panel/components/ConfirmationDialog.js.map +1 -1
  44. package/dist/side-panel/components/ToolIcon.js +1 -1
  45. package/dist/side-panel/hooks/useServerNotifications.d.ts.map +1 -1
  46. package/dist/side-panel/hooks/useServerNotifications.js +13 -3
  47. package/dist/side-panel/hooks/useServerNotifications.js.map +1 -1
  48. package/dist/side-panel/side-panel.js +73 -28
  49. package/dist/side-panel/styles.css +1 -1
  50. package/dist/tab-state.d.ts +8 -1
  51. package/dist/tab-state.d.ts.map +1 -1
  52. package/dist/tab-state.js +36 -9
  53. package/dist/tab-state.js.map +1 -1
  54. package/dist/tool-dispatch.d.ts.map +1 -1
  55. package/dist/tool-dispatch.js +3 -2
  56. package/dist/tool-dispatch.js.map +1 -1
  57. package/manifest.json +1 -1
  58. package/package.json +1 -1
@@ -1,5 +1,13 @@
1
- /** Restore wsConnected from chrome.storage.session on service worker wake */
1
+ /**
2
+ * Restore wsConnected from chrome.storage.session on service worker wake.
3
+ * Idempotent: only reads from storage once per service worker lifecycle.
4
+ */
2
5
  declare const restoreWsConnectedState: () => void;
6
+ /**
7
+ * Await the wsConnected restore from session storage.
8
+ * Returns immediately if restoreWsConnectedState has not been called yet.
9
+ */
10
+ declare const waitForWsConnectedRestore: () => Promise<void>;
3
11
  /** Handler signature for background message dispatch */
4
12
  type MessageHandler = (message: Record<string, unknown>, sendResponse: (response: unknown) => void) => void;
5
13
  /** Handle offscreen:getUrl — return the WebSocket URL derived from user-configured port */
@@ -8,8 +16,6 @@ declare const handleOffscreenGetUrl: MessageHandler;
8
16
  declare const handleWsState: MessageHandler;
9
17
  /** Handle ws:message — relay a JSON-RPC message from the MCP server */
10
18
  declare const handleWsMessage: MessageHandler;
11
- /** Handle bg:getConnectionState — query WebSocket connection state */
12
- declare const handleBgGetConnectionState: MessageHandler;
13
19
  /**
14
20
  * Handle bg:getFullState — return merged state from all local caches.
15
21
  * Combines plugin metadata (chrome.storage.local), server state cache
@@ -58,5 +64,5 @@ declare const handlePortChanged: MessageHandler;
58
64
  declare const initBackgroundMessageHandlers: () => void;
59
65
  /** Exported handler names for testing (mirrors methodHandlerNames in message-router.ts) */
60
66
  declare const backgroundHandlerNames: readonly string[];
61
- export { backgroundHandlerNames, handleBgGetConnectionState, handleBgGetFullState, handleBgInstallPlugin, handleBgRemovePlugin, handleBgSearchPlugins, handleBgSetAllBrowserToolsEnabled, handleBgSetAllToolsEnabled, handleBgSetBrowserToolEnabled, handleBgSetToolEnabled, handleBgUpdatePlugin, handleOffscreenGetUrl, handlePluginLogs, handlePortChanged, handleSpConfirmationResponse, handleSpConfirmationTimeout, handleToolProgress, handleWsMessage, handleWsState, initBackgroundMessageHandlers, restoreWsConnectedState, };
67
+ export { backgroundHandlerNames, handleBgGetFullState, handleBgInstallPlugin, handleBgRemovePlugin, handleBgSearchPlugins, handleBgSetAllBrowserToolsEnabled, handleBgSetAllToolsEnabled, handleBgSetBrowserToolEnabled, handleBgSetToolEnabled, handleBgUpdatePlugin, handleOffscreenGetUrl, handlePluginLogs, handlePortChanged, handleSpConfirmationResponse, handleSpConfirmationTimeout, handleToolProgress, handleWsMessage, handleWsState, initBackgroundMessageHandlers, restoreWsConnectedState, waitForWsConnectedRestore, };
62
68
  //# sourceMappingURL=background-message-handlers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"background-message-handlers.d.ts","sourceRoot":"","sources":["../src/background-message-handlers.ts"],"names":[],"mappings":"AAuCA,6EAA6E;AAC7E,QAAA,MAAM,uBAAuB,QAAO,IAWnC,CAAC;AAcF,wDAAwD;AACxD,KAAK,cAAc,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,KAAK,IAAI,CAAC;AAE5G,2FAA2F;AAC3F,QAAA,MAAM,qBAAqB,EAAE,cAY5B,CAAC;AAEF,2DAA2D;AAC3D,QAAA,MAAM,aAAa,EAAE,cAmBpB,CAAC;AAEF,uEAAuE;AACvE,QAAA,MAAM,eAAe,EAAE,cAGtB,CAAC;AAEF,sEAAsE;AACtE,QAAA,MAAM,0BAA0B,EAAE,cAKjC,CAAC;AAEF;;;;;GAKG;AACH,QAAA,MAAM,oBAAoB,EAAE,cAkF3B,CAAC;AAEF;;;;GAIG;AACH,QAAA,MAAM,gBAAgB,EAAE,cAqBvB,CAAC;AAEF;;;;GAIG;AACH,QAAA,MAAM,kBAAkB,EAAE,cAoBzB,CAAC;AAEF,uFAAuF;AACvF,QAAA,MAAM,4BAA4B,EAAE,cAenC,CAAC;AAEF,mFAAmF;AACnF,QAAA,MAAM,2BAA2B,EAAE,cAOlC,CAAC;AAEF,yFAAyF;AACzF,QAAA,MAAM,sBAAsB,EAAE,cAiC7B,CAAC;AAEF,sFAAsF;AACtF,QAAA,MAAM,0BAA0B,EAAE,cAyBjC,CAAC;AAEF,iGAAiG;AACjG,QAAA,MAAM,6BAA6B,EAAE,cAsBpC,CAAC;AAEF,wFAAwF;AACxF,QAAA,MAAM,iCAAiC,EAAE,cAkBxC,CAAC;AAEF,gEAAgE;AAChE,QAAA,MAAM,qBAAqB,EAAE,cAS5B,CAAC;AAEF,iEAAiE;AACjE,QAAA,MAAM,qBAAqB,EAAE,cAS5B,CAAC;AAEF,0DAA0D;AAC1D,QAAA,MAAM,oBAAoB,EAAE,cAS3B,CAAC;AAEF,8EAA8E;AAC9E,QAAA,MAAM,oBAAoB,EAAE,cAS3B,CAAC;AAEF,kFAAkF;AAClF,QAAA,MAAM,iBAAiB,EAAE,cAKxB,CAAC;AAiDF;;;GAGG;AACH,QAAA,MAAM,6BAA6B,QAAO,IAoBzC,CAAC;AAEF,2FAA2F;AAC3F,QAAA,MAAM,sBAAsB,EAAE,SAAS,MAAM,EAAmC,CAAC;AAEjF,OAAO,EACL,sBAAsB,EACtB,0BAA0B,EAC1B,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,iCAAiC,EACjC,0BAA0B,EAC1B,6BAA6B,EAC7B,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EACjB,4BAA4B,EAC5B,2BAA2B,EAC3B,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,6BAA6B,EAC7B,uBAAuB,GACxB,CAAC"}
1
+ {"version":3,"file":"background-message-handlers.d.ts","sourceRoot":"","sources":["../src/background-message-handlers.ts"],"names":[],"mappings":"AAoDA;;;GAGG;AACH,QAAA,MAAM,uBAAuB,QAAO,IAYnC,CAAC;AAEF;;;GAGG;AACH,QAAA,MAAM,yBAAyB,QAAO,OAAO,CAAC,IAAI,CAAmD,CAAC;AActG,wDAAwD;AACxD,KAAK,cAAc,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,KAAK,IAAI,CAAC;AAE5G,2FAA2F;AAC3F,QAAA,MAAM,qBAAqB,EAAE,cAY5B,CAAC;AAEF,2DAA2D;AAC3D,QAAA,MAAM,aAAa,EAAE,cAmBpB,CAAC;AAEF,uEAAuE;AACvE,QAAA,MAAM,eAAe,EAAE,cAOtB,CAAC;AAEF;;;;;GAKG;AACH,QAAA,MAAM,oBAAoB,EAAE,cAiG3B,CAAC;AAEF;;;;GAIG;AACH,QAAA,MAAM,gBAAgB,EAAE,cAqBvB,CAAC;AAEF;;;;GAIG;AACH,QAAA,MAAM,kBAAkB,EAAE,cAoBzB,CAAC;AAEF,uFAAuF;AACvF,QAAA,MAAM,4BAA4B,EAAE,cAenC,CAAC;AAEF,mFAAmF;AACnF,QAAA,MAAM,2BAA2B,EAAE,cAOlC,CAAC;AAEF,yFAAyF;AACzF,QAAA,MAAM,sBAAsB,EAAE,cAyC7B,CAAC;AAEF,sFAAsF;AACtF,QAAA,MAAM,0BAA0B,EAAE,cAiDjC,CAAC;AAEF,iGAAiG;AACjG,QAAA,MAAM,6BAA6B,EAAE,cA6BpC,CAAC;AAEF,wFAAwF;AACxF,QAAA,MAAM,iCAAiC,EAAE,cAiCxC,CAAC;AAEF,gEAAgE;AAChE,QAAA,MAAM,qBAAqB,EAAE,cAS5B,CAAC;AAEF,iEAAiE;AACjE,QAAA,MAAM,qBAAqB,EAAE,cAS5B,CAAC;AAEF,0DAA0D;AAC1D,QAAA,MAAM,oBAAoB,EAAE,cAS3B,CAAC;AAEF,8EAA8E;AAC9E,QAAA,MAAM,oBAAoB,EAAE,cAS3B,CAAC;AAEF,kFAAkF;AAClF,QAAA,MAAM,iBAAiB,EAAE,cAKxB,CAAC;AA+CF;;;GAGG;AACH,QAAA,MAAM,6BAA6B,QAAO,IAoBzC,CAAC;AAEF,2FAA2F;AAC3F,QAAA,MAAM,sBAAsB,EAAE,SAAS,MAAM,EAAmC,CAAC;AAEjF,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,iCAAiC,EACjC,0BAA0B,EAC1B,6BAA6B,EAC7B,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EACjB,4BAA4B,EAC5B,2BAA2B,EAC3B,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,6BAA6B,EAC7B,uBAAuB,EACvB,yBAAyB,GAC1B,CAAC"}
@@ -1,10 +1,10 @@
1
- import { clearAllConfirmationBadges, clearConfirmationBackgroundTimeout, clearConfirmationBadge, } from './confirmation-badge.js';
1
+ import { clearAllConfirmationBadges, clearConfirmationBackgroundTimeout, clearConfirmationBadge, getPendingConfirmations, } from './confirmation-badge.js';
2
2
  import { buildWsUrl, SERVER_PORT_KEY, WS_CONNECTED_KEY } from './constants.js';
3
3
  import { handleServerMessage } from './message-router.js';
4
4
  import { forwardToSidePanel, sendToServer } from './messaging.js';
5
5
  import { getAllPluginMeta } from './plugin-storage.js';
6
6
  import { rejectAllPendingServerRequests, sendServerRequest } from './server-request.js';
7
- import { clearServerStateCache, getServerStateCache, loadServerStateCacheFromSession, updateServerStateCache, } from './server-state-cache.js';
7
+ import { addPendingAllBrowserToolsUpdate, addPendingBrowserToolUpdate, addPendingPluginAllToolsUpdate, addPendingPluginToolUpdate, clearServerStateCache, getCachesInitialized, getServerStateCache, loadServerStateCacheFromSession, removePendingAllBrowserToolsUpdate, removePendingBrowserToolUpdate, removePendingPluginAllToolsUpdate, removePendingPluginToolUpdate, updateServerStateCache, } from './server-state-cache.js';
8
8
  import { clearTabStateCache, getLastKnownStates, loadLastKnownStateFromSession, stopReadinessPoll, } from './tab-state.js';
9
9
  import { notifyDispatchProgress } from './tool-dispatch.js';
10
10
  // ---------------------------------------------------------------------------
@@ -18,9 +18,16 @@ import { notifyDispatchProgress } from './tool-dispatch.js';
18
18
  let wsConnected = false;
19
19
  /** Tracks the reason for the last WebSocket disconnection */
20
20
  let lastDisconnectReason;
21
- /** Restore wsConnected from chrome.storage.session on service worker wake */
21
+ /** Promise tracking the in-flight or completed wsConnected restore from session storage */
22
+ let wsConnectedRestorePromise;
23
+ /**
24
+ * Restore wsConnected from chrome.storage.session on service worker wake.
25
+ * Idempotent: only reads from storage once per service worker lifecycle.
26
+ */
22
27
  const restoreWsConnectedState = () => {
23
- chrome.storage.session
28
+ if (wsConnectedRestorePromise !== undefined)
29
+ return;
30
+ wsConnectedRestorePromise = chrome.storage.session
24
31
  .get(WS_CONNECTED_KEY)
25
32
  .then(data => {
26
33
  if (typeof data[WS_CONNECTED_KEY] === 'boolean') {
@@ -31,6 +38,11 @@ const restoreWsConnectedState = () => {
31
38
  // storage.session may not be available in all contexts
32
39
  });
33
40
  };
41
+ /**
42
+ * Await the wsConnected restore from session storage.
43
+ * Returns immediately if restoreWsConnectedState has not been called yet.
44
+ */
45
+ const waitForWsConnectedRestore = () => wsConnectedRestorePromise ?? Promise.resolve();
34
46
  /** Persist wsConnected to chrome.storage.session */
35
47
  const persistWsConnected = (connected) => {
36
48
  wsConnected = connected;
@@ -74,16 +86,14 @@ const handleWsState = (message, sendResponse) => {
74
86
  };
75
87
  /** Handle ws:message — relay a JSON-RPC message from the MCP server */
76
88
  const handleWsMessage = (message, sendResponse) => {
77
- handleServerMessage(message.data);
89
+ try {
90
+ handleServerMessage(message.data);
91
+ }
92
+ catch (err) {
93
+ console.error('[opentabs:background] handleServerMessage threw:', err);
94
+ }
78
95
  sendResponse({ ok: true });
79
96
  };
80
- /** Handle bg:getConnectionState — query WebSocket connection state */
81
- const handleBgGetConnectionState = (_message, sendResponse) => {
82
- sendResponse({
83
- connected: wsConnected,
84
- disconnectReason: wsConnected ? undefined : lastDisconnectReason,
85
- });
86
- };
87
97
  /**
88
98
  * Handle bg:getFullState — return merged state from all local caches.
89
99
  * Combines plugin metadata (chrome.storage.local), server state cache
@@ -92,15 +102,27 @@ const handleBgGetConnectionState = (_message, sendResponse) => {
92
102
  */
93
103
  const handleBgGetFullState = (_message, sendResponse) => {
94
104
  (async () => {
105
+ // Await wsConnected restoration before reading it. On service worker wake,
106
+ // restoreWsConnectedState() may still be pending when the first bg:getFullState
107
+ // arrives. Without this await, wsConnected would be false even though session
108
+ // storage has true, causing the side panel to show a false disconnected state.
109
+ await waitForWsConnectedRestore();
95
110
  // Read caches once for the wake detection check
96
111
  let tabStates = getLastKnownStates();
97
112
  let serverCache = getServerStateCache();
98
113
  // Wake detection: if the service worker was suspended, in-memory caches
99
114
  // are empty but wsConnected may still be true (restored from session storage).
100
- // Reload caches from session storage before merging.
115
+ // Restore server state from session first this also restores cachesInitialized,
116
+ // which distinguishes "woke from suspension after sync.full" (true) from
117
+ // "connected but sync.full has not arrived yet" (false). Tab state is only
118
+ // restored when cachesInitialized is true, preventing stale session data
119
+ // from being used during the connect-to-sync.full gap.
101
120
  if (wsConnected && tabStates.size === 0 && serverCache.plugins.length === 0) {
102
- await Promise.all([loadLastKnownStateFromSession(), loadServerStateCacheFromSession()]);
103
- tabStates = getLastKnownStates();
121
+ await loadServerStateCacheFromSession();
122
+ if (getCachesInitialized()) {
123
+ await loadLastKnownStateFromSession();
124
+ tabStates = getLastKnownStates();
125
+ }
104
126
  serverCache = getServerStateCache();
105
127
  }
106
128
  const metaIndex = await getAllPluginMeta();
@@ -154,6 +176,7 @@ const handleBgGetFullState = (_message, sendResponse) => {
154
176
  failedPlugins: serverCache.failedPlugins,
155
177
  browserTools: serverCache.browserTools,
156
178
  serverVersion: serverCache.serverVersion,
179
+ pendingConfirmations: getPendingConfirmations(),
157
180
  });
158
181
  })().catch(() => {
159
182
  sendResponse({
@@ -163,6 +186,7 @@ const handleBgGetFullState = (_message, sendResponse) => {
163
186
  failedPlugins: [],
164
187
  browserTools: [],
165
188
  serverVersion: undefined,
189
+ pendingConfirmations: [],
166
190
  });
167
191
  });
168
192
  };
@@ -251,8 +275,11 @@ const handleBgSetToolEnabled = (message, sendResponse) => {
251
275
  const plugin = message.plugin;
252
276
  const tool = message.tool;
253
277
  const enabled = message.enabled;
254
- // Optimistically update the local server state cache
278
+ // Capture the original enabled value for surgical rollback
255
279
  const cache = getServerStateCache();
280
+ const pluginEntry = cache.plugins.find(p => p.name === plugin);
281
+ const originalEnabled = pluginEntry?.tools.find(t => t.name === tool)?.enabled ?? !enabled;
282
+ // Optimistically update the local server state cache
256
283
  const updatedPlugins = cache.plugins.map(p => {
257
284
  if (p.name !== plugin)
258
285
  return p;
@@ -261,23 +288,27 @@ const handleBgSetToolEnabled = (message, sendResponse) => {
261
288
  tools: p.tools.map(t => (t.name === tool ? { ...t, enabled } : t)),
262
289
  };
263
290
  });
291
+ addPendingPluginToolUpdate(plugin, tool, enabled);
264
292
  updateServerStateCache({ plugins: updatedPlugins });
265
293
  sendServerRequest('config.setToolEnabled', { plugin, tool, enabled })
266
294
  .then((result) => {
295
+ removePendingPluginToolUpdate(plugin, tool);
267
296
  sendResponse(result);
268
297
  })
269
298
  .catch((err) => {
270
- // Revert the optimistic update on failure
271
- const revertCache = getServerStateCache();
272
- const revertPlugins = revertCache.plugins.map(p => {
299
+ removePendingPluginToolUpdate(plugin, tool);
300
+ // Surgically revert only the target tool in the current cache, preserving
301
+ // any concurrent plugins.changed updates that arrived during the request.
302
+ const currentCache = getServerStateCache();
303
+ const revertedPlugins = currentCache.plugins.map(p => {
273
304
  if (p.name !== plugin)
274
305
  return p;
275
306
  return {
276
307
  ...p,
277
- tools: p.tools.map(t => (t.name === tool ? { ...t, enabled: !enabled } : t)),
308
+ tools: p.tools.map(t => (t.name === tool ? { ...t, enabled: originalEnabled } : t)),
278
309
  };
279
310
  });
280
- updateServerStateCache({ plugins: revertPlugins });
311
+ updateServerStateCache({ plugins: revertedPlugins });
281
312
  sendResponse({ error: err instanceof Error ? err.message : String(err) });
282
313
  });
283
314
  };
@@ -285,9 +316,17 @@ const handleBgSetToolEnabled = (message, sendResponse) => {
285
316
  const handleBgSetAllToolsEnabled = (message, sendResponse) => {
286
317
  const plugin = message.plugin;
287
318
  const enabled = message.enabled;
288
- // Optimistically update the local server state cache
319
+ // Capture original enabled values for surgical rollback
289
320
  const cache = getServerStateCache();
290
- const originalPlugins = cache.plugins;
321
+ const pluginEntry = cache.plugins.find(p => p.name === plugin);
322
+ const toolNames = pluginEntry ? pluginEntry.tools.map(t => t.name) : [];
323
+ const originalToolStates = new Map();
324
+ if (pluginEntry) {
325
+ for (const t of pluginEntry.tools) {
326
+ originalToolStates.set(t.name, t.enabled);
327
+ }
328
+ }
329
+ // Optimistically update the local server state cache
291
330
  const updatedPlugins = cache.plugins.map(p => {
292
331
  if (p.name !== plugin)
293
332
  return p;
@@ -296,14 +335,30 @@ const handleBgSetAllToolsEnabled = (message, sendResponse) => {
296
335
  tools: p.tools.map(t => ({ ...t, enabled })),
297
336
  };
298
337
  });
338
+ addPendingPluginAllToolsUpdate(plugin, toolNames, enabled);
299
339
  updateServerStateCache({ plugins: updatedPlugins });
300
340
  sendServerRequest('config.setAllToolsEnabled', { plugin, enabled })
301
341
  .then((result) => {
342
+ removePendingPluginAllToolsUpdate(plugin, toolNames);
302
343
  sendResponse(result);
303
344
  })
304
345
  .catch((err) => {
305
- // Revert to the original plugins on failure
306
- updateServerStateCache({ plugins: originalPlugins });
346
+ removePendingPluginAllToolsUpdate(plugin, toolNames);
347
+ // Surgically revert only the target plugin's tools in the current cache,
348
+ // preserving any concurrent plugins.changed updates that arrived during the request.
349
+ const currentCache = getServerStateCache();
350
+ const revertedPlugins = currentCache.plugins.map(p => {
351
+ if (p.name !== plugin)
352
+ return p;
353
+ return {
354
+ ...p,
355
+ tools: p.tools.map(t => ({
356
+ ...t,
357
+ enabled: originalToolStates.get(t.name) ?? t.enabled,
358
+ })),
359
+ };
360
+ });
361
+ updateServerStateCache({ plugins: revertedPlugins });
307
362
  sendResponse({ error: err instanceof Error ? err.message : String(err) });
308
363
  });
309
364
  };
@@ -311,37 +366,57 @@ const handleBgSetAllToolsEnabled = (message, sendResponse) => {
311
366
  const handleBgSetBrowserToolEnabled = (message, sendResponse) => {
312
367
  const tool = message.tool;
313
368
  const enabled = message.enabled;
314
- // Optimistically update the local server state cache
369
+ // Capture the original enabled value for surgical rollback
315
370
  const cache = getServerStateCache();
371
+ const originalEnabled = cache.browserTools.find(bt => bt.name === tool)?.enabled ?? !enabled;
372
+ // Optimistically update the local server state cache
316
373
  const updatedBrowserTools = cache.browserTools.map(bt => (bt.name === tool ? { ...bt, enabled } : bt));
374
+ addPendingBrowserToolUpdate(tool, enabled);
317
375
  updateServerStateCache({ browserTools: updatedBrowserTools });
318
376
  sendServerRequest('config.setBrowserToolEnabled', { tool, enabled })
319
377
  .then((result) => {
378
+ removePendingBrowserToolUpdate(tool);
320
379
  sendResponse(result);
321
380
  })
322
381
  .catch((err) => {
323
- // Revert the optimistic update on failure
324
- const revertCache = getServerStateCache();
325
- const revertBrowserTools = revertCache.browserTools.map(bt => bt.name === tool ? { ...bt, enabled: !enabled } : bt);
326
- updateServerStateCache({ browserTools: revertBrowserTools });
382
+ removePendingBrowserToolUpdate(tool);
383
+ // Surgically revert only the target browser tool in the current cache,
384
+ // preserving any concurrent plugins.changed updates that arrived during the request.
385
+ const currentCache = getServerStateCache();
386
+ const revertedBrowserTools = currentCache.browserTools.map(bt => bt.name === tool ? { ...bt, enabled: originalEnabled } : bt);
387
+ updateServerStateCache({ browserTools: revertedBrowserTools });
327
388
  sendResponse({ error: err instanceof Error ? err.message : String(err) });
328
389
  });
329
390
  };
330
391
  /** Handle bg:setAllBrowserToolsEnabled — toggle all browser tools via the MCP server */
331
392
  const handleBgSetAllBrowserToolsEnabled = (message, sendResponse) => {
332
393
  const enabled = message.enabled;
333
- // Optimistically update the local server state cache
394
+ // Capture original enabled values for surgical rollback
334
395
  const cache = getServerStateCache();
335
- const originalBrowserTools = cache.browserTools;
396
+ const toolNames = cache.browserTools.map(bt => bt.name);
397
+ const originalToolStates = new Map();
398
+ for (const bt of cache.browserTools) {
399
+ originalToolStates.set(bt.name, bt.enabled);
400
+ }
401
+ // Optimistically update the local server state cache
336
402
  const updatedBrowserTools = cache.browserTools.map(bt => ({ ...bt, enabled }));
403
+ addPendingAllBrowserToolsUpdate(toolNames, enabled);
337
404
  updateServerStateCache({ browserTools: updatedBrowserTools });
338
405
  sendServerRequest('config.setAllBrowserToolsEnabled', { enabled })
339
406
  .then((result) => {
407
+ removePendingAllBrowserToolsUpdate(toolNames);
340
408
  sendResponse(result);
341
409
  })
342
410
  .catch((err) => {
343
- // Revert to the original browser tools on failure
344
- updateServerStateCache({ browserTools: originalBrowserTools });
411
+ removePendingAllBrowserToolsUpdate(toolNames);
412
+ // Surgically revert only the browser tools' enabled states in the current cache,
413
+ // preserving any concurrent plugins.changed updates that arrived during the request.
414
+ const currentCache = getServerStateCache();
415
+ const revertedBrowserTools = currentCache.browserTools.map(bt => ({
416
+ ...bt,
417
+ enabled: originalToolStates.get(bt.name) ?? bt.enabled,
418
+ }));
419
+ updateServerStateCache({ browserTools: revertedBrowserTools });
345
420
  sendResponse({ error: err instanceof Error ? err.message : String(err) });
346
421
  });
347
422
  };
@@ -403,7 +478,6 @@ const backgroundHandlers = new Map([
403
478
  ['offscreen:getUrl', handleOffscreenGetUrl],
404
479
  ['ws:state', handleWsState],
405
480
  ['ws:message', handleWsMessage],
406
- ['bg:getConnectionState', handleBgGetConnectionState],
407
481
  ['bg:getFullState', handleBgGetFullState],
408
482
  ['bg:setToolEnabled', handleBgSetToolEnabled],
409
483
  ['bg:setAllToolsEnabled', handleBgSetAllToolsEnabled],
@@ -425,7 +499,6 @@ const EXTENSION_ONLY_TYPES = new Set([
425
499
  'offscreen:getUrl',
426
500
  'ws:state',
427
501
  'ws:message',
428
- 'bg:getConnectionState',
429
502
  'bg:getFullState',
430
503
  'bg:setToolEnabled',
431
504
  'bg:setAllToolsEnabled',
@@ -463,5 +536,5 @@ const initBackgroundMessageHandlers = () => {
463
536
  };
464
537
  /** Exported handler names for testing (mirrors methodHandlerNames in message-router.ts) */
465
538
  const backgroundHandlerNames = [...backgroundHandlers.keys()];
466
- export { backgroundHandlerNames, handleBgGetConnectionState, handleBgGetFullState, handleBgInstallPlugin, handleBgRemovePlugin, handleBgSearchPlugins, handleBgSetAllBrowserToolsEnabled, handleBgSetAllToolsEnabled, handleBgSetBrowserToolEnabled, handleBgSetToolEnabled, handleBgUpdatePlugin, handleOffscreenGetUrl, handlePluginLogs, handlePortChanged, handleSpConfirmationResponse, handleSpConfirmationTimeout, handleToolProgress, handleWsMessage, handleWsState, initBackgroundMessageHandlers, restoreWsConnectedState, };
539
+ export { backgroundHandlerNames, handleBgGetFullState, handleBgInstallPlugin, handleBgRemovePlugin, handleBgSearchPlugins, handleBgSetAllBrowserToolsEnabled, handleBgSetAllToolsEnabled, handleBgSetBrowserToolEnabled, handleBgSetToolEnabled, handleBgUpdatePlugin, handleOffscreenGetUrl, handlePluginLogs, handlePortChanged, handleSpConfirmationResponse, handleSpConfirmationTimeout, handleToolProgress, handleWsMessage, handleWsState, initBackgroundMessageHandlers, restoreWsConnectedState, waitForWsConnectedRestore, };
467
540
  //# sourceMappingURL=background-message-handlers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"background-message-handlers.js","sourceRoot":"","sources":["../src/background-message-handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"background-message-handlers.js","sourceRoot":"","sources":["../src/background-message-handlers.ts"],"names":[],"mappings":"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"}