@jobshimo/browser-link 0.23.8 → 0.23.9

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.
@@ -56,7 +56,11 @@ function body() {
56
56
  '→ `browser.snapshot` first, verify current state. Do not speculate.',
57
57
  '',
58
58
  'Tool call returned "Tab not connected":',
59
- '→ `browser.events` to see tab-renamed entries before retrying.',
59
+ '→ `browser.events` to see tab-renamed entries before retrying. After a',
60
+ 'primary restart the extension auto-reconnects dropped tabs with four',
61
+ 'backoff attempts (1s/2s/4s/8s delays, plus per-attempt connect time;',
62
+ 'same tab_id when possible) — wait a few seconds and retry before',
63
+ 'asking the human to re-press Connect.',
60
64
  '',
61
65
  'After a non-trivial flow worked end-to-end (opened dialog, filled form,',
62
66
  'found a setting):',
@@ -1 +1 @@
1
- {"version":3,"file":"content.js","sourceRoot":"","sources":["../../src/agent-instructions/content.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC;;;;;;;;;;GAUG;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,sCAAsC,CAAC;AACnE,MAAM,CAAC,MAAM,UAAU,GAAG,wCAAwC,CAAC;AAEnE,MAAM,UAAU,WAAW,CAAC,OAAO,GAAG,OAAO;IAC3C,OAAO,GAAG,YAAY,KAAK,OAAO,MAAM,CAAC;AAC3C,CAAC;AAED;;;;yCAIyC;AACzC,MAAM,CAAC,MAAM,QAAQ,GACnB,gFAAgF,CAAC;AACnF,MAAM,CAAC,MAAM,MAAM,GAAG,4CAA4C,CAAC;AAEnE;;;;mBAImB;AACnB,SAAS,IAAI;IACX,OAAO;QACL,mDAAmD;QACnD,EAAE;QACF,kFAAkF;QAClF,wEAAwE;QACxE,+DAA+D;QAC/D,EAAE;QACF,0DAA0D;QAC1D,EAAE;QACF,kDAAkD;QAClD,qEAAqE;QACrE,+DAA+D;QAC/D,yEAAyE;QACzE,oDAAoD;QACpD,yEAAyE;QACzE,sEAAsE;QACtE,kFAAkF;QAClF,EAAE;QACF,iDAAiD;QACjD,kCAAkC;QAClC,mEAAmE;QACnE,sEAAsE;QACtE,qEAAqE;QACrE,EAAE;QACF,qDAAqD;QACrD,qEAAqE;QACrE,EAAE;QACF,yCAAyC;QACzC,gEAAgE;QAChE,EAAE;QACF,yEAAyE;QACzE,mBAAmB;QACnB,qEAAqE;QACrE,wEAAwE;QACxE,qDAAqD;QACrD,EAAE;QACF,2DAA2D;QAC3D,iEAAiE;QACjE,sEAAsE;QACtE,qEAAqE;QACrE,0CAA0C;QAC1C,EAAE;QACF,4DAA4D;QAC5D,wEAAwE;QACxE,0CAA0C;QAC1C,EAAE;QACF,6EAA6E;QAC7E,sEAAsE;QACtE,qEAAqE;QACrE,uEAAuE;QACvE,kEAAkE;QAClE,yBAAyB;QACzB,mEAAmE;QACnE,yEAAyE;QACzE,mEAAmE;QACnE,uDAAuD;QACvD,+DAA+D;QAC/D,EAAE;QACF,wCAAwC;QACxC,EAAE;QACF,8EAA8E;QAC9E,2EAA2E;QAC3E,EAAE;QACF,WAAW;QACX,EAAE;QACF,iDAAiD;QACjD,4EAA4E;QAC5E,2DAA2D;QAC3D,2EAA2E;QAC3E,yEAAyE;QACzE,uEAAuE;QACvE,gEAAgE;QAChE,EAAE;QACF,8EAA8E;QAC9E,EAAE;QACF,uEAAuE;QACvE,oEAAoE;QACpE,EAAE;QACF,sEAAsE;QACtE,uEAAuE;QACvE,oEAAoE;QACpE,sEAAsE;QACtE,qEAAqE;QACrE,wEAAwE;QACxE,6DAA6D;QAC7D,yEAAyE;QACzE,gEAAgE;QAChE,kEAAkE;QAClE,uEAAuE;QACvE,wEAAwE;QACxE,qEAAqE;QACrE,mEAAmE;QACnE,qCAAqC;QACrC,yEAAyE;QACzE,mEAAmE;QACnE,sEAAsE;QACtE,iEAAiE;QACjE,kEAAkE;QAClE,qEAAqE;QACrE,uEAAuE;QACvE,oEAAoE;QACpE,mCAAmC;QACnC,oEAAoE;QACpE,qEAAqE;QACrE,wEAAwE;QACxE,oEAAoE;QACpE,iCAAiC;QACjC,yEAAyE;QACzE,sEAAsE;QACtE,8DAA8D;QAC9D,kEAAkE;QAClE,uEAAuE;QACvE,oEAAoE;QACpE,oEAAoE;QACpE,sEAAsE;QACtE,sEAAsE;QACtE,kEAAkE;QAClE,mDAAmD;QACnD,oEAAoE;QACpE,sEAAsE;QACtE,wEAAwE;QACxE,6DAA6D;QAC7D,iHAAiH;QACjH,2EAA2E;QAC3E,oEAAoE;QACpE,mDAAmD;QACnD,kEAAkE;QAClE,oEAAoE;QACpE,2CAA2C;QAC3C,+DAA+D;QAC/D,uEAAuE;QACvE,uEAAuE;QACvE,sEAAsE;QACtE,qEAAqE;QACrE,wEAAwE;QACxE,wEAAwE;QACxE,yEAAyE;QACzE,sDAAsD;QACtD,kEAAkE;QAClE,wEAAwE;QACxE,sEAAsE;QACtE,mEAAmE;QACnE,sEAAsE;QACtE,sEAAsE;QACtE,sEAAsE;QACtE,qEAAqE;QACrE,kEAAkE;QAClE,gDAAgD;QAChD,sEAAsE;QACtE,qEAAqE;QACrE,+CAA+C;KAChD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED;;;;;;;kDAOkD;AAClD,MAAM,UAAU,KAAK,CAAC,OAAO,GAAG,OAAO,EAAE,MAAqB,IAAI;IAChE,MAAM,KAAK,GAAG;QACZ,WAAW,CAAC,OAAO,CAAC;QACpB,kCAAkC,OAAO,0FAA0F;QACnI,EAAE;QACF,IAAI,EAAE;QACN,EAAE;QACF,UAAU;QACV,EAAE;KACH,CAAC;IACF,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1C,4EAA4E;IAC5E,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACjE,CAAC;AAED;;+DAE+D;AAC/D,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,qEAAqE,CAAC,IAAI,EAAE,CAAC;SAC7F,MAAM,CAAC;AACZ,CAAC;AAED;;4DAE4D;AAC5D,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;IAChD,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;IACjD,MAAM,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;IAC9B,OAAO,IAAI,GAAG,MAAM,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACnD,CAAC;AAWD,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACjD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IAChD,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,MAAM,sBAAsB,GAAG,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC;IACtD,MAAM,oBAAoB,GAAG,sBAAsB,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACpE,6DAA6D;IAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAG,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,oBAAoB,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC;IACrF,OAAO;QACL,UAAU,EAAE,KAAK,CAAC,KAAK;QACvB,QAAQ;QACR,gBAAgB,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,IAAI,IAAI;KAChD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"content.js","sourceRoot":"","sources":["../../src/agent-instructions/content.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ import { DEFAULT_IDLE_TTL_MINUTES, IDLE_TTL_STORAGE_KEY, IDLE_TTL_UPDATED_AT_STO
6
6
  import { DEFAULT_FLOW_RECORDING_ENABLED, FLOW_RECORDING_STORAGE_KEY, FLOW_RECORDING_UPDATED_AT_STORAGE_KEY, normalizeFlowRecordingEnabled, parseIncomingFlowRecordingSettings, } from './flow-recording-policy.js';
7
7
  import { buildRecorderJs, buildStopRecorderJs } from './inpage/recorder.js';
8
8
  import { DISCARDED_WHILE_SAVING_MESSAGE, appendRecordingStep, buildAmbiguousNote, buildNavigationWaitForStep, generateRecordingSession, isNavigationForRecording, isSameRecordingSession, parseRecordedPayload, toFlowStep, } from './recording.js';
9
+ import { CONNECT_IN_PROGRESS_ERROR, createReconnectScheduler, isInvoluntaryClose, isReconnectStateFresh, parseStoredReconnectState, reconnectStorageKey, tabIdFromReconnectKey, } from './reconnect-policy.js';
9
10
  const WS_URL = 'ws://127.0.0.1:17529';
10
11
  const CDP_VERSION = '1.3';
11
12
  const CONSOLE_BUFFER_MAX = 200;
@@ -1459,6 +1460,16 @@ async function cleanup(tabId) {
1459
1460
  const state = tabStates.get(tabId);
1460
1461
  if (!state)
1461
1462
  return;
1463
+ // Delete the tracking entry SYNCHRONOUSLY, before any await below: the
1464
+ // reconnect policy's CloseContext.tracked contract promises that every
1465
+ // extension-initiated teardown deletes state BEFORE the WS close event
1466
+ // dispatches. ws.close() further down fires that event on a later turn,
1467
+ // so deleting here keeps the promise — the close handler then sees an
1468
+ // untracked socket and never auto-reconnects a teardown the extension
1469
+ // itself initiated. The awaited steps below only need the captured
1470
+ // `state` and raw CDP calls, never the map entry — and deleting first
1471
+ // also makes a re-entrant cleanup a no-op instead of a double detach.
1472
+ tabStates.delete(tabId);
1462
1473
  // Recording never survives a disconnect — there is no server connection
1463
1474
  // left to save to, and leaving captured-but-unsaved steps around after
1464
1475
  // the tab drops its bridge would be a surprising place for them to
@@ -1490,7 +1501,6 @@ async function cleanup(tabId) {
1490
1501
  // Best effort — the resource may already be detached/closed.
1491
1502
  }
1492
1503
  }
1493
- tabStates.delete(tabId);
1494
1504
  }
1495
1505
  chrome.debugger.onEvent.addListener((source, method, params) => {
1496
1506
  if (source.tabId === undefined)
@@ -1536,7 +1546,131 @@ async function forgetTabId(chromeTabId) {
1536
1546
  /* ignore */
1537
1547
  }
1538
1548
  }
1549
+ /* Auto-reconnect after an involuntary WS close.
1550
+ *
1551
+ * When a REGISTERED tab's WebSocket dies under us (unclean close — the
1552
+ * primary MCP server crashed or restarted), the scheduler below retries
1553
+ * `connectTab` with per-tab backoff (see RECONNECT_DELAYS_MS in
1554
+ * reconnect-policy.ts), reusing the preserved `prevTabId:*` id so the new
1555
+ * primary can keep the same tab_id (or emit `tab-renamed` if it can't —
1556
+ * existing contract, nothing new on the wire). Every EXTENSION-initiated
1557
+ * teardown (explicit disconnect, tab removal, idle park, debugger detach)
1558
+ * runs `cleanup` BEFORE the close event dispatches, so the close handler
1559
+ * sees an untracked socket and never schedules; a CLEAN close from the
1560
+ * server (browser.reset) is a deliberate goodbye and never schedules
1561
+ * either — the popup Connect button stays the fallback for both, as today.
1562
+ *
1563
+ * MV3 durability: each scheduled attempt is mirrored into
1564
+ * `chrome.storage.session` (`pendingReconnect:*`, right next to the
1565
+ * `prevTabId:*` keys). Plain timers cover the common case — the backoff
1566
+ * span sits inside the service worker's idle grace, and every attempt
1567
+ * touches chrome.* APIs which resets the idle clock — but if the worker is
1568
+ * killed anyway, `resumePendingReconnects` below picks the budget back up
1569
+ * on the next wake, and entries older than RECONNECT_STATE_TTL_MS are
1570
+ * discarded rather than surprising the user minutes later. */
1571
+ async function storeReconnectState(tabId, attempt) {
1572
+ try {
1573
+ await chrome.storage.session.set({
1574
+ [reconnectStorageKey(tabId)]: { attempt, updatedAt: Date.now() },
1575
+ });
1576
+ }
1577
+ catch {
1578
+ /* non-fatal — worst case a killed service worker cannot resume this retry */
1579
+ }
1580
+ }
1581
+ async function clearReconnectState(tabId) {
1582
+ try {
1583
+ await chrome.storage.session.remove(reconnectStorageKey(tabId));
1584
+ }
1585
+ catch {
1586
+ /* ignore */
1587
+ }
1588
+ }
1589
+ const reconnectScheduler = createReconnectScheduler({
1590
+ attempt: async (tabId) => {
1591
+ try {
1592
+ await chrome.tabs.get(tabId);
1593
+ }
1594
+ catch {
1595
+ // The Chrome tab itself is gone — nothing left to reconnect.
1596
+ return 'stop';
1597
+ }
1598
+ const existing = tabStates.get(tabId);
1599
+ if (existing) {
1600
+ // A live bridge already exists (e.g. the user pressed Connect while
1601
+ // a retry was pending) — done. A state whose socket is not OPEN yet
1602
+ // belongs to a connect attempt still mid-flight (cleanup deletes
1603
+ // state synchronously, so it never lingers here); keep the backoff
1604
+ // going instead of declaring victory early.
1605
+ return existing.ws?.readyState === WebSocket.OPEN ? 'connected' : 'retry';
1606
+ }
1607
+ try {
1608
+ const result = await connectTab(tabId);
1609
+ return result.ok ? 'connected' : 'retry';
1610
+ }
1611
+ catch {
1612
+ return 'retry';
1613
+ }
1614
+ },
1615
+ onStateChange: (tabId, state) => {
1616
+ if (state)
1617
+ void storeReconnectState(tabId, state.attempt);
1618
+ else
1619
+ void clearReconnectState(tabId);
1620
+ },
1621
+ });
1622
+ /** Resume reconnect cycles a killed service worker left behind. Runs once
1623
+ * per worker start (top-level call below) — `chrome.storage.session`
1624
+ * survives worker restarts but not browser restarts, which is exactly the
1625
+ * lifetime the retry budget should have. */
1626
+ async function resumePendingReconnects() {
1627
+ let stored;
1628
+ try {
1629
+ stored = await chrome.storage.session.get(null);
1630
+ }
1631
+ catch {
1632
+ return;
1633
+ }
1634
+ const now = Date.now();
1635
+ for (const [key, value] of Object.entries(stored)) {
1636
+ const tabId = tabIdFromReconnectKey(key);
1637
+ if (tabId === null)
1638
+ continue;
1639
+ const state = parseStoredReconnectState(value);
1640
+ if (state && isReconnectStateFresh(state.updatedAt, now) && !tabStates.has(tabId)) {
1641
+ reconnectScheduler.schedule(tabId, state.attempt);
1642
+ }
1643
+ else {
1644
+ void clearReconnectState(tabId);
1645
+ }
1646
+ }
1647
+ }
1648
+ void resumePendingReconnects();
1649
+ /** Tabs with a `connectTab` currently in flight. The `tabStates.has` check
1650
+ * inside `doConnectTab` alone cannot prevent two concurrent connects — the
1651
+ * state lands only after three awaited chrome.* calls — so this SYNCHRONOUS
1652
+ * check-and-set is the real per-tab reentrancy guard. */
1653
+ const connectsInFlight = new Set();
1539
1654
  async function connectTab(tabId) {
1655
+ if (connectsInFlight.has(tabId)) {
1656
+ // A concurrent connect (popup Connect racing a scheduled reconnect
1657
+ // attempt, or vice versa) — the in-flight attempt owns the tab.
1658
+ // Answer benignly instead of letting a second attempt fail its
1659
+ // debugger attach with a confusing error; the popup renders this
1660
+ // exact message as the "Reconnecting" card, not an error.
1661
+ return { ok: false, error: CONNECT_IN_PROGRESS_ERROR };
1662
+ }
1663
+ connectsInFlight.add(tabId);
1664
+ try {
1665
+ return await doConnectTab(tabId);
1666
+ }
1667
+ finally {
1668
+ connectsInFlight.delete(tabId);
1669
+ }
1670
+ }
1671
+ /** Body of `connectTab` — call only through the wrapper above, which holds
1672
+ * the per-tab in-flight lock for the full duration of the attempt. */
1673
+ async function doConnectTab(tabId) {
1540
1674
  if (tabStates.has(tabId)) {
1541
1675
  return { ok: false, error: 'This tab is already connected' };
1542
1676
  }
@@ -1610,6 +1744,13 @@ async function connectTab(tabId) {
1610
1744
  // new kind into the tool.request handler.
1611
1745
  switch (msg.kind) {
1612
1746
  case 'tab.registered': {
1747
+ // A successful registration ends any reconnect cycle for this
1748
+ // tab. Covers the resume path re-arming a tab the user just
1749
+ // connected manually (resumePendingReconnects's tabStates
1750
+ // check races connectTab); when the SCHEDULER drove this very
1751
+ // connect, its in-flight guard makes this cancel a clean,
1752
+ // notify-once end of the cycle.
1753
+ reconnectScheduler.cancel(tabId);
1613
1754
  state.serverTabId = msg.payload.tabId;
1614
1755
  // serverVersion is optional on the wire so older servers that
1615
1756
  // predate the field still parse — narrow on `typeof string`.
@@ -1671,21 +1812,47 @@ async function connectTab(tabId) {
1671
1812
  }
1672
1813
  })();
1673
1814
  });
1815
+ // A WebSocket 'error' is always followed by a 'close', so teardown
1816
+ // lives in the close handler alone — this one only settles a
1817
+ // pre-registration connect failure with the friendlier diagnosis (for
1818
+ // a post-registration drop `settle` is already spent and this no-ops).
1674
1819
  ws.addEventListener('error', () => {
1675
- void cleanup(tabId).catch(() => {
1676
- // Best effort — already-detached state is fine.
1677
- });
1678
1820
  settle({ ok: false, error: 'WebSocket connection failed. Is the MCP server running?' });
1679
1821
  });
1680
- ws.addEventListener('close', () => {
1822
+ ws.addEventListener('close', (ev) => {
1823
+ const current = tabStates.get(tabId);
1824
+ if (current !== undefined && current.ws !== ws) {
1825
+ // A newer connection already owns this tab — this close belongs to
1826
+ // a superseded socket, and tearing state down here would kill the
1827
+ // NEW bridge rather than the one that just died.
1828
+ settle({ ok: false, error: 'WebSocket closed before registration' });
1829
+ return;
1830
+ }
1831
+ // Decide BEFORE cleanup wipes the evidence: an unclean close of a
1832
+ // still-tracked, registered connection means the server died under
1833
+ // us — the one case the auto-reconnect scheduler exists for. See
1834
+ // the reconnect section doc above storeReconnectState for why every
1835
+ // other close (explicit disconnect, tab removal, idle park,
1836
+ // browser.reset's clean goodbye) falls out of this predicate.
1837
+ const involuntary = isInvoluntaryClose({
1838
+ tracked: current?.ws === ws,
1839
+ registered: current?.serverTabId !== undefined,
1840
+ wasClean: ev.wasClean,
1841
+ });
1681
1842
  void cleanup(tabId).catch(() => {
1682
1843
  // Best effort — already-detached state is fine.
1683
1844
  });
1684
1845
  settle({ ok: false, error: 'WebSocket closed before registration' });
1846
+ if (involuntary)
1847
+ reconnectScheduler.schedule(tabId);
1685
1848
  });
1686
1849
  });
1687
1850
  }
1688
1851
  async function disconnectTab(tabId) {
1852
+ // Explicit user intent beats any pending auto-reconnect — cancel it
1853
+ // first so a scheduled retry cannot resurrect the bridge right after
1854
+ // the user asked for it to go away.
1855
+ reconnectScheduler.cancel(tabId);
1689
1856
  await cleanup(tabId);
1690
1857
  // Explicit user-driven disconnect → forget the previous tab id so the
1691
1858
  // next "Connect" starts from a clean slate (vs. an involuntary
@@ -1695,8 +1862,17 @@ async function disconnectTab(tabId) {
1695
1862
  }
1696
1863
  function getTabStatus(tabId) {
1697
1864
  const state = tabStates.get(tabId);
1698
- if (!state)
1865
+ if (!state) {
1866
+ // Keep the popup truthful while auto-reconnect is working: "not
1867
+ // connected, but actively retrying" rather than a flat idle state.
1868
+ // `connectsInFlight` covers the short gap inside a live attempt
1869
+ // before its TabState lands — without it the popup's poll could
1870
+ // misread that gap as idle and freeze the card there.
1871
+ if (reconnectScheduler.isPending(tabId) || connectsInFlight.has(tabId)) {
1872
+ return { connected: false, reconnecting: true };
1873
+ }
1699
1874
  return { connected: false };
1875
+ }
1700
1876
  return { connected: true, serverTabId: state.serverTabId };
1701
1877
  }
1702
1878
  /**
@@ -2060,6 +2236,12 @@ chrome.runtime.onMessage.addListener((msg, _sender, sendResponse) => {
2060
2236
  if (!isRuntimeMessage(msg))
2061
2237
  return false;
2062
2238
  if (msg.action === 'connect') {
2239
+ // An explicit Connect cancels any FUTURE auto-reconnect retries for
2240
+ // this tab. If a scheduled attempt is already mid-flight (cancel
2241
+ // cannot abort it), connectTab's per-tab in-flight lock turns this
2242
+ // call into a benign "already in progress" result instead of a
2243
+ // second concurrent connect.
2244
+ reconnectScheduler.cancel(msg.tabId);
2063
2245
  void connectTab(msg.tabId).then(sendResponse);
2064
2246
  return true;
2065
2247
  }
@@ -2105,6 +2287,8 @@ chrome.runtime.onMessage.addListener((msg, _sender, sendResponse) => {
2105
2287
  return false;
2106
2288
  });
2107
2289
  chrome.tabs.onRemoved.addListener((tabId) => {
2290
+ // No tab, no reconnect — abort any pending retry cycle for it.
2291
+ reconnectScheduler.cancel(tabId);
2108
2292
  void cleanup(tabId).catch(() => {
2109
2293
  // Best effort.
2110
2294
  });
@@ -1 +1 @@
1
- {"version":3,"file":"background.js","sourceRoot":"","sources":["../src/background.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"background.js","sourceRoot":"","sources":["../src/background.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "manifest_version": 3,
3
3
  "name": "browser-link",
4
- "version": "0.23.8",
4
+ "version": "0.23.9",
5
5
  "description": "Bridge between Chrome and an MCP client (Claude Code, OpenCode, GitHub Copilot CLI, …). Per-tab manual activation.",
6
6
  "permissions": [
7
7
  "debugger",
@@ -5,6 +5,7 @@
5
5
  import { IDLE_TTL_STORAGE_KEY, IDLE_TTL_UPDATED_AT_STORAGE_KEY, clampIdleTtlMinutes, } from './idle-policy.js';
6
6
  import { FLOW_RECORDING_STORAGE_KEY, FLOW_RECORDING_UPDATED_AT_STORAGE_KEY, normalizeFlowRecordingEnabled, } from './flow-recording-policy.js';
7
7
  import { describeFlowStep } from './recording.js';
8
+ import { CONNECT_IN_PROGRESS_ERROR } from './reconnect-policy.js';
8
9
  async function getCurrentTab() {
9
10
  const [tab] = await chrome.tabs.query({ active: true, currentWindow: true });
10
11
  return tab;
@@ -144,6 +145,44 @@ async function onIdleTtlChange() {
144
145
  [IDLE_TTL_UPDATED_AT_STORAGE_KEY]: Date.now(),
145
146
  });
146
147
  }
148
+ /** Card label shown while background.ts's auto-reconnect scheduler is
149
+ * retrying a dropped tab. Doubles as the sentinel `syncReconnectCard`
150
+ * matches on, so the poll only ever rewrites the card into or out of THIS
151
+ * state and can never clobber onAction's transient "Connecting…"/
152
+ * "Disconnecting…" labels. */
153
+ const RECONNECTING_LABEL = 'Reconnecting…';
154
+ /**
155
+ * Keep the connection card truthful across reconnect transitions while the
156
+ * popup stays open. The 800ms poll deliberately does not re-render the
157
+ * whole card (that would fight onAction's transient states) — this only
158
+ * flips the card INTO "Reconnecting…" from the steady idle/connected
159
+ * states, and OUT of it once the cycle ends (Connected on success, Not
160
+ * connected on exhaustion). Everything else is left alone.
161
+ */
162
+ function syncReconnectCard(status) {
163
+ const showingReconnect = $('status-label').textContent === RECONNECTING_LABEL;
164
+ const shouldShowReconnect = !status.connected && status.reconnecting === true;
165
+ if (shouldShowReconnect === showingReconnect)
166
+ return;
167
+ if (shouldShowReconnect) {
168
+ // Only take over the steady states — a transient onAction label means
169
+ // a user-driven round-trip is mid-flight and owns the card.
170
+ const cardState = $('card').dataset.state;
171
+ if (cardState !== 'idle' && cardState !== 'connected')
172
+ return;
173
+ setStatus('connecting', RECONNECTING_LABEL);
174
+ setAction('Connect this tab', 'primary');
175
+ return;
176
+ }
177
+ if (status.connected) {
178
+ setStatus('connected', 'Connected', status.serverTabId);
179
+ setAction('Disconnect this tab', 'danger');
180
+ }
181
+ else {
182
+ setStatus('idle', 'Not connected');
183
+ setAction('Connect this tab', 'primary');
184
+ }
185
+ }
147
186
  function renderPendingDialog(pending) {
148
187
  const box = $('dialog-box');
149
188
  if (pending === null) {
@@ -352,6 +391,16 @@ async function refresh() {
352
391
  setAction('Disconnect this tab', 'danger');
353
392
  await refreshPendingDialog(tab.id);
354
393
  }
394
+ else if (status.reconnecting) {
395
+ // Auto-reconnect is retrying after an involuntary drop (e.g. the
396
+ // primary restarted) — show the truthful in-between state. Connect
397
+ // stays available: pressing it cancels any FUTURE retries, and if an
398
+ // attempt is already mid-flight the background's per-tab lock answers
399
+ // with a benign already-in-progress result that keeps this same card.
400
+ setStatus('connecting', RECONNECTING_LABEL);
401
+ setAction('Connect this tab', 'primary');
402
+ renderPendingDialog(null);
403
+ }
355
404
  else {
356
405
  setStatus('idle', 'Not connected');
357
406
  setAction('Connect this tab', 'primary');
@@ -396,6 +445,15 @@ async function onAction() {
396
445
  tabId: tab.id,
397
446
  });
398
447
  if (!result.ok) {
448
+ if (result.error === CONNECT_IN_PROGRESS_ERROR) {
449
+ // Lost the per-tab race against an attempt already mid-flight —
450
+ // benign: that attempt is doing exactly what the click asked for.
451
+ // Show the reconnect card; the 800ms poll flips it to Connected
452
+ // (or Not connected) once the in-flight attempt lands.
453
+ setStatus('connecting', RECONNECTING_LABEL);
454
+ setAction('Connect this tab', 'primary');
455
+ return;
456
+ }
399
457
  setStatus('error', result.error ?? 'Unknown error');
400
458
  setAction('Retry', 'primary');
401
459
  return;
@@ -470,6 +528,7 @@ setInterval(() => {
470
528
  return;
471
529
  await refreshPendingDialog(tab.id);
472
530
  const status = await send({ action: 'status', tabId: tab.id });
531
+ syncReconnectCard(status);
473
532
  await refreshRecordingUi(tab.id, status.connected);
474
533
  })();
475
534
  }, 800);
@@ -1 +1 @@
1
- {"version":3,"file":"popup.js","sourceRoot":"","sources":["../src/popup.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,2EAA2E;AAC3E,sEAAsE;AACtE,+BAA+B;AAC/B,OAAO,EACL,oBAAoB,EACpB,+BAA+B,EAC/B,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,0BAA0B,EAC1B,qCAAqC,EACrC,6BAA6B,GAC9B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAoElD,KAAK,UAAU,aAAa;IAC1B,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7E,OAAO,GAAG,CAAC;AACb,CAAC;AAED,yEAAyE;AACzE,sEAAsE;AACtE,kEAAkE;AAClE,qEAAqE;AACrE,uBAAuB;AACvB,KAAK,UAAU,IAAI,CAAI,OAAgB;IACrC,MAAM,GAAG,GAAY,MAAM,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC/D,OAAO,GAAQ,CAAC;AAClB,CAAC;AAED,SAAS,CAAC,CAAC,EAAU;IACnB,MAAM,EAAE,GAAG,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IACvC,IAAI,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC;IACrD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,YAAY,CAAC,KAAgB;IACpC,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;AAClC,CAAC;AAED,SAAS,SAAS,CAAC,KAAgB,EAAE,KAAa,EAAE,KAAc;IAChE,YAAY,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC,CAAC,cAAc,CAAC,CAAC,WAAW,GAAG,KAAK,CAAC;IACtC,MAAM,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC5B,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC;QAC5B,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC;IACzB,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;QACtB,OAAO,CAAC,WAAW,GAAG,EAAE,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,sEAAsE;AACtE,wEAAwE;AACxE,6CAA6C;AAC7C,SAAS,cAAc,CAAC,IAAmB;IACzC,MAAM,EAAE,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC;IAC5B,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC;QACjB,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC;QAClB,OAAO;IACT,CAAC;IACD,EAAE,CAAC,MAAM,GAAG,KAAK,CAAC;IAClB,EAAE,CAAC,SAAS,GAAG,IAAI,CAAC;AACtB,CAAC;AAED,SAAS,SAAS,CAAC,KAAa,EAAE,OAA6B,EAAE,QAAQ,GAAG,KAAK;IAC/E,MAAM,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAsB,CAAC;IAC7C,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC;IACxB,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC;IACxB,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAC1B,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAyB;IACpD,MAAM,MAAM,GAAG,CAAC,CAAC,gBAAgB,CAAmB,CAAC;IACrD,sEAAsE;IACtE,qEAAqE;IACrE,oEAAoE;IACpE,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QACrD,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC;QACrB,OAAO;IACT,CAAC;IACD,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC,CAAC,mBAAmB,CAAC,CAAC,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC;IACrD,CAAC,CAAC,gBAAgB,CAAC,CAAC,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC;AACjD,CAAC;AAED,KAAK,UAAU,oBAAoB;IACjC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAqB,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;IACzE,mBAAmB,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,0EAA0E;AAC1E,MAAM,yBAAyB,GAAG,iBAAiB,CAAC;AAEpD;;;;;;;;;GASG;AACH,SAAS,mBAAmB,CAAC,MAAyB,EAAE,OAAe;IACrE,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9B,MAAM,MAAM,GAAG,QAAQ,CAAC,cAAc,CAAC,yBAAyB,CAA6B,CAAC;IAC9F,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAC/C,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,yBAAyB,IAAI,GAAG,CAAC,KAAK,KAAK,KAAK,CACrE,CAAC;IACF,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,IAAI,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC1D,MAAM,CAAC,EAAE,GAAG,yBAAyB,CAAC;IACtC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,MAAM,CAAC,WAAW,GAAG,GAAG,OAAO,eAAe,CAAC;IAC/C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC;QACxF,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC;AAED,KAAK,UAAU,qBAAqB;IAClC,MAAM,MAAM,GAAG,CAAC,CAAC,iBAAiB,CAAsB,CAAC;IACzD,sEAAsE;IACtE,uEAAuE;IACvE,mBAAmB;IACnB,IAAI,QAAQ,CAAC,aAAa,KAAK,MAAM;QAAE,OAAO;IAC9C,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAChE,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAED,KAAK,UAAU,eAAe;IAC5B,MAAM,MAAM,GAAG,CAAC,CAAC,iBAAiB,CAAsB,CAAC;IACzD,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1D,sEAAsE;IACtE,uEAAuE;IACvE,uEAAuE;IACvE,wEAAwE;IACxE,gCAAgC;IAChC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;QAC7B,CAAC,oBAAoB,CAAC,EAAE,OAAO;QAC/B,CAAC,+BAA+B,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE;KAC9C,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAiC;IAC5D,MAAM,GAAG,GAAG,CAAC,CAAC,YAAY,CAAmB,CAAC;IAC9C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;QAClB,OAAO;IACT,CAAC;IACD,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC;IACnB,CAAC,CAAC,aAAa,CAAC,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAC5C,CAAC,CAAC,gBAAgB,CAAC,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO,IAAI,SAAS,CAAC;IAC/D,MAAM,WAAW,GAAG,CAAC,CAAC,qBAAqB,CAAqB,CAAC;IACjE,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC9B,WAAW,CAAC,MAAM,GAAG,KAAK,CAAC;QAC3B,WAAW,CAAC,KAAK,GAAG,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC;IACnD,CAAC;SAAM,CAAC;QACN,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC;QAC1B,WAAW,CAAC,KAAK,GAAG,EAAE,CAAC;IACzB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,KAAa;IAC/C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAsB,EAAE,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,CAAC;IACnF,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,0BAA0B;IACvC,MAAM,QAAQ,GAAG,CAAC,CAAC,uBAAuB,CAAqB,CAAC;IAChE,8DAA8D;IAC9D,IAAI,QAAQ,CAAC,aAAa,KAAK,QAAQ;QAAE,OAAO;IAChD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IACxE,QAAQ,CAAC,OAAO,GAAG,6BAA6B,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;AACrF,CAAC;AAED,KAAK,UAAU,2BAA2B;IACxC,MAAM,QAAQ,GAAG,CAAC,CAAC,uBAAuB,CAAqB,CAAC;IAChE,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;QAC7B,CAAC,0BAA0B,CAAC,EAAE,QAAQ,CAAC,OAAO;QAC9C,CAAC,qCAAqC,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE;KACpD,CAAC,CAAC;IACH,kEAAkE;IAClE,yEAAyE;IACzE,0DAA0D;IAC1D,MAAM,GAAG,GAAG,MAAM,aAAa,EAAE,CAAC;IAClC,IAAI,CAAC,GAAG,EAAE,EAAE;QAAE,OAAO;IACrB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IAC7E,MAAM,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;6DAQ6D;AAC7D,SAAS,qBAAqB,CAC5B,KAAiB,EACjB,MAAe,EACf,gBAA0B;IAE1B,CAAC,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;IACrC,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,EAAE,CAAC;IACpE,CAAC,CAAC,sBAAsB,CAAC,CAAC,WAAW,GAAG,GAAG,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;IACtE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC;IACtC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACpB,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QACxB,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACxC,EAAE,CAAC,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC5C,IAAI,CAAC,WAAW,GAAG,yCAAyC,CAAC;YAC7D,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,gBAAgB,CAAC;YACpC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAsB;IAC/C,MAAM,EAAE,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAChC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC;QACjB,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC;QACpB,OAAO;IACT,CAAC;IACD,EAAE,CAAC,MAAM,GAAG,KAAK,CAAC;IAClB,EAAE,CAAC,WAAW,GAAG,OAAO,CAAC;AAC3B,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,kBAAkB,CAAC,KAAa,EAAE,SAAkB;IACjE,MAAM,YAAY,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IACxE,MAAM,OAAO,GAAG,6BAA6B,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;IAEhF,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;QAC3B,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC;QAC3B,CAAC,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;QACpC,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAwB,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC;IACvF,YAAY,CAAC,MAAM,GAAG,KAAK,CAAC;IAC5B,MAAM,SAAS,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG,CAAC,CAAC,kBAAkB,CAAsB,CAAC;IAE7D,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC;QACxB,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC;QACxB,qBAAqB,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;QAC5F,OAAO;IACT,CAAC;IAED,SAAS,CAAC,MAAM,GAAG,KAAK,CAAC;IACzB,CAAC,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;IACpC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,SAAS,CAAC,MAAM,GAAG,KAAK,CAAC;QACzB,SAAS,CAAC,WAAW,GAAG,MAAM,CAAC;QAC/B,SAAS,CAAC,SAAS,GAAG,QAAQ,CAAC;IACjC,CAAC;SAAM,CAAC;QACN,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC;QACxB,SAAS,CAAC,WAAW,GAAG,QAAQ,CAAC;QACjC,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC;IAClC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,iBAAiB;IAC9B,MAAM,GAAG,GAAG,MAAM,aAAa,EAAE,CAAC;IAClC,IAAI,CAAC,GAAG,EAAE,EAAE;QAAE,OAAO;IACrB,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACxB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAwB,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/F,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAsB,EAAE,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3F,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,iBAAiB,CAAC,MAAM,CAAC,KAAK,IAAI,2BAA2B,CAAC,CAAC;IACjF,CAAC;SAAM,CAAC;QACN,MAAM,MAAM,GAAG,MAAM,IAAI,CAAwB,EAAE,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;QAC9F,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,iBAAiB,CAAC,MAAM,CAAC,KAAK,IAAI,4BAA4B,CAAC,CAAC;IAClF,CAAC;IACD,MAAM,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,KAAK,UAAU,eAAe;IAC5B,MAAM,GAAG,GAAG,MAAM,aAAa,EAAE,CAAC;IAClC,IAAI,CAAC,GAAG,EAAE,EAAE;QAAE,OAAO;IACrB,MAAM,SAAS,GAAG,CAAC,CAAC,sBAAsB,CAAqB,CAAC;IAChE,MAAM,OAAO,GAAG,CAAC,CAAC,gBAAgB,CAAsB,CAAC;IACzD,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACxB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IACxB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAwB;YAC/C,MAAM,EAAE,eAAe;YACvB,KAAK,EAAE,GAAG,CAAC,EAAE;YACb,IAAI,EAAE,SAAS,CAAC,KAAK;SACtB,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,iBAAiB,CAAC,MAAM,CAAC,KAAK,IAAI,0BAA0B,CAAC,CAAC;YAC9D,OAAO;QACT,CAAC;QACD,SAAS,CAAC,KAAK,GAAG,EAAE,CAAC;QACrB,MAAM,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;YAAS,CAAC;QACT,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB;IAC/B,MAAM,GAAG,GAAG,MAAM,aAAa,EAAE,CAAC;IAClC,IAAI,CAAC,GAAG,EAAE,EAAE;QAAE,OAAO;IACrB,MAAM,IAAI,CAAkB,EAAE,MAAM,EAAE,kBAAkB,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1E,CAAC,CAAC,sBAAsB,CAAsB,CAAC,KAAK,GAAG,EAAE,CAAC;IAC3D,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACxB,MAAM,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,KAAK,UAAU,OAAO;IACpB,yEAAyE;IACzE,+DAA+D;IAC/D,MAAM,oBAAoB,EAAE,CAAC;IAC7B,MAAM,GAAG,GAAG,MAAM,aAAa,EAAE,CAAC;IAClC,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAEvB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC;QACb,SAAS,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QACpC,SAAS,CAAC,kBAAkB,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QAC/C,KAAK,CAAC,WAAW,GAAG,EAAE,CAAC;QACvB,cAAc,CAAC,IAAI,CAAC,CAAC;QACrB,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC,CAAC,eAAe,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;QACjC,CAAC,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;QACpC,OAAO;IACT,CAAC;IAED,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;IAClC,cAAc,CAAC,IAAI,CAAC,CAAC;IAErB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAe;QACtC,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,GAAG,CAAC,EAAE;KACd,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,SAAS,CAAC,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QACxD,SAAS,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;QAC3C,MAAM,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;SAAM,CAAC;QACN,SAAS,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;QACnC,SAAS,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;QACzC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IACD,MAAM,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;AACrD,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,MAAe;IAC5C,MAAM,GAAG,GAAG,MAAM,aAAa,EAAE,CAAC;IAClC,IAAI,CAAC,GAAG,EAAE,EAAE;QAAE,OAAO;IACrB,MAAM,WAAW,GAAG,CAAC,CAAC,qBAAqB,CAAqB,CAAC;IACjE,MAAM,OAAO,GACX;QACE,MAAM,EAAE,eAAe;QACvB,KAAK,EAAE,GAAG,CAAC,EAAE;QACb,MAAM;KACP,CAAC;IACJ,IAAI,CAAC,WAAW,CAAC,MAAM;QAAE,OAAO,CAAC,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC;IAChE,MAAM,IAAI,CAAkC,OAAO,CAAC,CAAC;IACrD,MAAM,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AACrC,CAAC;AAED,KAAK,UAAU,QAAQ;IACrB,MAAM,GAAG,GAAG,MAAM,aAAa,EAAE,CAAC;IAClC,IAAI,CAAC,GAAG,EAAE,EAAE;QAAE,OAAO;IAErB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAe;QACtC,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,GAAG,CAAC,EAAE;KACd,CAAC,CAAC;IAEH,uEAAuE;IACvE,qEAAqE;IACrE,uBAAuB;IACvB,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;IAC7E,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAAa,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAEhF,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,MAAM,IAAI,CAAkB,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IACvE,CAAC;SAAM,CAAC;QACN,MAAM,MAAM,GAAG,MAAM,IAAI,CAAgB;YACvC,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,GAAG,CAAC,EAAE;SACd,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,IAAI,eAAe,CAAC,CAAC;YACpD,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAC9B,OAAO;QACT,CAAC;IACH,CAAC;IAED,MAAM,OAAO,EAAE,CAAC;AAClB,CAAC;AAED,CAAC,CAAC,QAAQ,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;IACzC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;QAChC,SAAS,CAAC,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACrE,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,CAAC,CAAC,eAAe,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;IAChD,eAAe,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QAC/B,kEAAkE;QAClE,qCAAqC;IACvC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,CAAC,CAAC,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;IACjD,eAAe,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QAChC,eAAe;IACjB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,CAAC,CAAC,yBAAyB,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;IAC1D,mEAAmE;IACnE,oEAAoE;IACpE,oEAAoE;IACpE,qEAAqE;IACrE,uCAAuC;IACvC,KAAK,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,2BAA2B,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;AACnF,CAAC,CAAC,CAAC;AAEH,CAAC,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE,GAAG,EAAE;IACnD,eAAe,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;QAC3B,iEAAiE;QACjE,qDAAqD;IACvD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,CAAC,CAAC,uBAAuB,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE,GAAG,EAAE;IACzD,2BAA2B,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;QACvC,0DAA0D;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,CAAC,CAAC,kBAAkB,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;IACnD,iBAAiB,EAAE,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;QACzC,iBAAiB,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,CAAC,CAAC,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;IACjD,eAAe,EAAE,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;QACvC,iBAAiB,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,CAAC,CAAC,mBAAmB,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;IACpD,kBAAkB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;QAC9B,eAAe;IACjB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,yEAAyE;AACzE,0EAA0E;AAC1E,uEAAuE;AACvE,uEAAuE;AACvE,kEAAkE;AAClE,2EAA2E;AAC3E,WAAW,CAAC,GAAG,EAAE;IACf,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,MAAM,oBAAoB,EAAE,CAAC;QAC7B,MAAM,qBAAqB,EAAE,CAAC;QAC9B,MAAM,0BAA0B,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,MAAM,aAAa,EAAE,CAAC;QAClC,IAAI,CAAC,GAAG,EAAE,EAAE;YAAE,OAAO;QACrB,MAAM,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7E,MAAM,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;IACrD,CAAC,CAAC,EAAE,CAAC;AACP,CAAC,EAAE,GAAG,CAAC,CAAC;AAER,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;IAC/B,SAAS,CAAC,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AACvE,CAAC,CAAC,CAAC;AACH,qBAAqB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;IACjC,yEAAyE;AAC3E,CAAC,CAAC,CAAC;AACH,0BAA0B,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;IACtC,+DAA+D;AACjE,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"popup.js","sourceRoot":"","sources":["../src/popup.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,137 @@
1
+ /**
2
+ * Pure decision logic + injectable scheduler for auto-reconnecting a tab's
3
+ * WebSocket bridge after an INVOLUNTARY close (the primary MCP server died
4
+ * or restarted under us).
5
+ *
6
+ * Deliberately kept free of chrome.* — background.ts owns the WebSocket
7
+ * lifecycle, the `chrome.storage.session` persistence, and the actual
8
+ * `connectTab` call; this module owns WHEN to retry and at what pace, so
9
+ * the backoff behavior is unit-tested without mocking sockets or storage.
10
+ * Same separation idle-policy.ts already established for the WS-idle sweep.
11
+ *
12
+ * The reconnect itself reuses the existing continuity machinery unchanged:
13
+ * `connectTab` reads the preserved `prevTabId:*` session key and asks the
14
+ * new primary to honour the old tab_id (the server emits `tab-renamed` in
15
+ * the bridge event log when it can't — existing contract).
16
+ *
17
+ * Security tradeoff (documented in the README's security model): a retry
18
+ * reuses the same unauthenticated loopback channel a manual Connect uses,
19
+ * minus the human gesture — accepted, like the port-squatting caveat.
20
+ */
21
+ /**
22
+ * Backoff schedule, one entry per attempt: 1s, 2s, 4s, 8s — four attempts,
23
+ * 15s of scheduled wait total (each attempt's own duration — debugger
24
+ * attach, CDP enables, WS round trip — adds on top of the delays, so the
25
+ * wall-clock window is longer). Sized for the observed failure (a primary
26
+ * process restarting within seconds) and kept comfortably inside the MV3
27
+ * service worker's ~30s idle grace: every timer fire touches chrome.* APIs,
28
+ * which resets the idle clock, so the whole sequence normally runs without
29
+ * the worker being torn down. If Chrome kills the worker anyway, the
30
+ * persisted `pendingReconnect:*` state resumes the budget on the next wake
31
+ * (see background.ts's resumePendingReconnects). Past the last entry the
32
+ * budget is exhausted and the popup's Connect button is the fallback, as
33
+ * before this feature existed.
34
+ */
35
+ export declare const RECONNECT_DELAYS_MS: readonly number[];
36
+ /**
37
+ * How long a persisted `pendingReconnect:*` entry stays resumable. A
38
+ * service worker that wakes MINUTES after the drop should not surprise the
39
+ * user with a reconnect long after they moved on — past this window the
40
+ * entry is discarded and the popup's Connect button is the fallback.
41
+ * Matches the temperament of WS_IDLE_SWEEP_MS (one minute).
42
+ */
43
+ export declare const RECONNECT_STATE_TTL_MS = 60000;
44
+ /** chrome.storage.session key prefix for per-tab reconnect state — sits
45
+ * alongside the existing `prevTabId:*` keys (same area, same per-browser-
46
+ * session lifetime, same per-Chrome-tab keying). */
47
+ export declare const RECONNECT_STORAGE_PREFIX = "pendingReconnect:";
48
+ /** Error message background.ts's `connectTab` returns to a caller that
49
+ * lost the per-tab in-flight race (e.g. a popup Connect landing while a
50
+ * scheduled reconnect attempt is mid-flight). The popup matches on this
51
+ * EXACT string to render the benign "Reconnecting" card instead of an
52
+ * error card — both entrypoints import it from here so the contract
53
+ * cannot drift. */
54
+ export declare const CONNECT_IN_PROGRESS_ERROR = "A connection attempt for this tab is already in progress";
55
+ export declare function reconnectStorageKey(tabId: number): string;
56
+ /** Inverse of `reconnectStorageKey` — `null` for keys that are not ours or
57
+ * do not carry a plain non-negative integer tab id. */
58
+ export declare function tabIdFromReconnectKey(key: string): number | null;
59
+ /** Delay before the given 0-based attempt, or `undefined` once the retry
60
+ * budget is exhausted. */
61
+ export declare function reconnectDelayMs(attempt: number, delays?: readonly number[]): number | undefined;
62
+ /**
63
+ * What background.ts's WS close handler knows about a close, reduced to the
64
+ * three facts that decide whether auto-reconnect should kick in.
65
+ */
66
+ export interface CloseContext {
67
+ /** The closing socket is still the one this tab's TabState points at.
68
+ * False when `cleanup` already ran (explicit disconnect, tab removal,
69
+ * idle park, debugger detach — every extension-initiated teardown
70
+ * deletes the state BEFORE the close event dispatches) or when a newer
71
+ * connection superseded this socket. */
72
+ tracked: boolean;
73
+ /** `tab.registered` completed on this connection — pre-registration
74
+ * failures are connect errors the popup surfaces, not drops to recover. */
75
+ registered: boolean;
76
+ /** CloseEvent.wasClean — a clean close means the peer deliberately said
77
+ * goodbye (e.g. the server's browser.reset closing every tab socket,
78
+ * which documents that the user must re-press Connect). Only an UNCLEAN
79
+ * close (dead process, killed socket) is an involuntary drop. */
80
+ wasClean: boolean;
81
+ }
82
+ /** Whether a WS close should trigger the auto-reconnect scheduler. */
83
+ export declare function isInvoluntaryClose(ctx: CloseContext): boolean;
84
+ /** Persisted per-tab reconnect state (`pendingReconnect:*` value shape). */
85
+ export interface StoredReconnectState {
86
+ /** 0-based index of the attempt that was scheduled when the state was
87
+ * written — resuming re-arms the SAME attempt, so a killed service
88
+ * worker replays the pending delay instead of restarting the budget. */
89
+ attempt: number;
90
+ /** Epoch ms of the last schedule — see `isReconnectStateFresh`. */
91
+ updatedAt: number;
92
+ }
93
+ /** Runtime shape guard for a stored `pendingReconnect:*` value — storage
94
+ * contents are untrusted (corruption, future shape changes), so malformed
95
+ * entries are rejected here and discarded by the caller. */
96
+ export declare function parseStoredReconnectState(value: unknown): StoredReconnectState | null;
97
+ /** Whether a persisted reconnect entry is still worth resuming. A negative
98
+ * age (clock went backwards) counts as stale — the fallback is just the
99
+ * popup's Connect button, so err on the quiet side. */
100
+ export declare function isReconnectStateFresh(updatedAt: number, now: number): boolean;
101
+ /** Outcome of one reconnect attempt, as reported by the injected `attempt`
102
+ * callback: 'connected' and 'stop' both end the cycle (success vs. "the
103
+ * tab is gone, nothing to reconnect"), 'retry' arms the next backoff step. */
104
+ export type ReconnectAttemptResult = 'connected' | 'retry' | 'stop';
105
+ export interface ReconnectSchedulerOptions {
106
+ /** Perform one reconnect attempt for this tab. A rejection is treated as
107
+ * 'retry' so a throwing chrome.* call never strands the cycle. */
108
+ attempt(tabId: number): Promise<ReconnectAttemptResult>;
109
+ /** Override the backoff schedule (tests). */
110
+ delaysMs?: readonly number[];
111
+ /** Timer injection (tests) — defaults to global setTimeout/clearTimeout. */
112
+ setTimer?: (fn: () => void, delayMs: number) => unknown;
113
+ clearTimer?: (handle: unknown) => void;
114
+ /** Persistence hook: called with the newly-armed attempt on every
115
+ * schedule, and with `null` whenever the cycle ends for any reason
116
+ * (success, stop, cancel, exhaustion) — background.ts mirrors this into
117
+ * `chrome.storage.session` so a killed service worker can resume. */
118
+ onStateChange?(tabId: number, state: {
119
+ attempt: number;
120
+ } | null): void;
121
+ }
122
+ export interface ReconnectScheduler {
123
+ /** Arm a reconnect cycle for this tab starting at `startAttempt`
124
+ * (0 for a fresh drop; the persisted attempt when resuming). Returns
125
+ * false — scheduling nothing — when a cycle is already pending for the
126
+ * tab (per-tab backoff, no thundering herd) or the budget is already
127
+ * exhausted at `startAttempt` (a stale resume). */
128
+ schedule(tabId: number, startAttempt?: number): boolean;
129
+ /** Abort the tab's pending cycle, if any — explicit disconnect, explicit
130
+ * popup Connect, and tab removal all route here. Safe mid-attempt: an
131
+ * in-flight `attempt` whose cycle was cancelled never re-arms. */
132
+ cancel(tabId: number): boolean;
133
+ /** Whether a reconnect cycle (timer armed or attempt in flight) is
134
+ * pending for this tab — what the popup's "Reconnecting" state reads. */
135
+ isPending(tabId: number): boolean;
136
+ }
137
+ export declare function createReconnectScheduler(options: ReconnectSchedulerOptions): ReconnectScheduler;
@@ -0,0 +1,169 @@
1
+ /**
2
+ * Pure decision logic + injectable scheduler for auto-reconnecting a tab's
3
+ * WebSocket bridge after an INVOLUNTARY close (the primary MCP server died
4
+ * or restarted under us).
5
+ *
6
+ * Deliberately kept free of chrome.* — background.ts owns the WebSocket
7
+ * lifecycle, the `chrome.storage.session` persistence, and the actual
8
+ * `connectTab` call; this module owns WHEN to retry and at what pace, so
9
+ * the backoff behavior is unit-tested without mocking sockets or storage.
10
+ * Same separation idle-policy.ts already established for the WS-idle sweep.
11
+ *
12
+ * The reconnect itself reuses the existing continuity machinery unchanged:
13
+ * `connectTab` reads the preserved `prevTabId:*` session key and asks the
14
+ * new primary to honour the old tab_id (the server emits `tab-renamed` in
15
+ * the bridge event log when it can't — existing contract).
16
+ *
17
+ * Security tradeoff (documented in the README's security model): a retry
18
+ * reuses the same unauthenticated loopback channel a manual Connect uses,
19
+ * minus the human gesture — accepted, like the port-squatting caveat.
20
+ */
21
+ /**
22
+ * Backoff schedule, one entry per attempt: 1s, 2s, 4s, 8s — four attempts,
23
+ * 15s of scheduled wait total (each attempt's own duration — debugger
24
+ * attach, CDP enables, WS round trip — adds on top of the delays, so the
25
+ * wall-clock window is longer). Sized for the observed failure (a primary
26
+ * process restarting within seconds) and kept comfortably inside the MV3
27
+ * service worker's ~30s idle grace: every timer fire touches chrome.* APIs,
28
+ * which resets the idle clock, so the whole sequence normally runs without
29
+ * the worker being torn down. If Chrome kills the worker anyway, the
30
+ * persisted `pendingReconnect:*` state resumes the budget on the next wake
31
+ * (see background.ts's resumePendingReconnects). Past the last entry the
32
+ * budget is exhausted and the popup's Connect button is the fallback, as
33
+ * before this feature existed.
34
+ */
35
+ export const RECONNECT_DELAYS_MS = [1000, 2000, 4000, 8000];
36
+ /**
37
+ * How long a persisted `pendingReconnect:*` entry stays resumable. A
38
+ * service worker that wakes MINUTES after the drop should not surprise the
39
+ * user with a reconnect long after they moved on — past this window the
40
+ * entry is discarded and the popup's Connect button is the fallback.
41
+ * Matches the temperament of WS_IDLE_SWEEP_MS (one minute).
42
+ */
43
+ export const RECONNECT_STATE_TTL_MS = 60_000;
44
+ /** chrome.storage.session key prefix for per-tab reconnect state — sits
45
+ * alongside the existing `prevTabId:*` keys (same area, same per-browser-
46
+ * session lifetime, same per-Chrome-tab keying). */
47
+ export const RECONNECT_STORAGE_PREFIX = 'pendingReconnect:';
48
+ /** Error message background.ts's `connectTab` returns to a caller that
49
+ * lost the per-tab in-flight race (e.g. a popup Connect landing while a
50
+ * scheduled reconnect attempt is mid-flight). The popup matches on this
51
+ * EXACT string to render the benign "Reconnecting" card instead of an
52
+ * error card — both entrypoints import it from here so the contract
53
+ * cannot drift. */
54
+ export const CONNECT_IN_PROGRESS_ERROR = 'A connection attempt for this tab is already in progress';
55
+ export function reconnectStorageKey(tabId) {
56
+ return `${RECONNECT_STORAGE_PREFIX}${tabId}`;
57
+ }
58
+ /** Inverse of `reconnectStorageKey` — `null` for keys that are not ours or
59
+ * do not carry a plain non-negative integer tab id. */
60
+ export function tabIdFromReconnectKey(key) {
61
+ if (!key.startsWith(RECONNECT_STORAGE_PREFIX))
62
+ return null;
63
+ const raw = key.slice(RECONNECT_STORAGE_PREFIX.length);
64
+ if (!/^\d+$/.test(raw))
65
+ return null;
66
+ return Number(raw);
67
+ }
68
+ /** Delay before the given 0-based attempt, or `undefined` once the retry
69
+ * budget is exhausted. */
70
+ export function reconnectDelayMs(attempt, delays = RECONNECT_DELAYS_MS) {
71
+ if (!Number.isInteger(attempt) || attempt < 0)
72
+ return undefined;
73
+ return delays[attempt];
74
+ }
75
+ /** Whether a WS close should trigger the auto-reconnect scheduler. */
76
+ export function isInvoluntaryClose(ctx) {
77
+ return ctx.tracked && ctx.registered && !ctx.wasClean;
78
+ }
79
+ /** Runtime shape guard for a stored `pendingReconnect:*` value — storage
80
+ * contents are untrusted (corruption, future shape changes), so malformed
81
+ * entries are rejected here and discarded by the caller. */
82
+ export function parseStoredReconnectState(value) {
83
+ if (!value || typeof value !== 'object')
84
+ return null;
85
+ const s = value;
86
+ if (typeof s.attempt !== 'number' || !Number.isInteger(s.attempt) || s.attempt < 0)
87
+ return null;
88
+ if (typeof s.updatedAt !== 'number' || !Number.isFinite(s.updatedAt))
89
+ return null;
90
+ return { attempt: s.attempt, updatedAt: s.updatedAt };
91
+ }
92
+ /** Whether a persisted reconnect entry is still worth resuming. A negative
93
+ * age (clock went backwards) counts as stale — the fallback is just the
94
+ * popup's Connect button, so err on the quiet side. */
95
+ export function isReconnectStateFresh(updatedAt, now) {
96
+ const age = now - updatedAt;
97
+ return age >= 0 && age < RECONNECT_STATE_TTL_MS;
98
+ }
99
+ export function createReconnectScheduler(options) {
100
+ const delays = options.delaysMs ?? RECONNECT_DELAYS_MS;
101
+ const setTimer = options.setTimer ?? ((fn, delayMs) => setTimeout(fn, delayMs));
102
+ const clearTimer = options.clearTimer ??
103
+ ((handle) => {
104
+ clearTimeout(handle);
105
+ });
106
+ const pending = new Map();
107
+ const notify = (tabId, state) => {
108
+ options.onStateChange?.(tabId, state);
109
+ };
110
+ function arm(tabId, entry, attempt) {
111
+ const delayMs = reconnectDelayMs(attempt, delays);
112
+ if (delayMs === undefined) {
113
+ // Budget exhausted — end the cycle cleanly. The popup's Connect
114
+ // button remains the fallback, exactly as before this feature.
115
+ pending.delete(tabId);
116
+ notify(tabId, null);
117
+ return false;
118
+ }
119
+ entry.attempt = attempt;
120
+ entry.timer = setTimer(() => {
121
+ void fire(tabId, entry);
122
+ }, delayMs);
123
+ notify(tabId, { attempt });
124
+ return true;
125
+ }
126
+ async function fire(tabId, entry) {
127
+ entry.timer = undefined;
128
+ let result;
129
+ try {
130
+ result = await options.attempt(tabId);
131
+ }
132
+ catch {
133
+ result = 'retry';
134
+ }
135
+ // Cancelled (or superseded) while the attempt was in flight — the
136
+ // canceller already cleared state and notified; do nothing more.
137
+ if (pending.get(tabId) !== entry)
138
+ return;
139
+ if (result === 'retry') {
140
+ arm(tabId, entry, entry.attempt + 1);
141
+ return;
142
+ }
143
+ pending.delete(tabId);
144
+ notify(tabId, null);
145
+ }
146
+ return {
147
+ schedule(tabId, startAttempt = 0) {
148
+ if (pending.has(tabId))
149
+ return false;
150
+ const entry = { attempt: startAttempt, timer: undefined };
151
+ pending.set(tabId, entry);
152
+ return arm(tabId, entry, startAttempt);
153
+ },
154
+ cancel(tabId) {
155
+ const entry = pending.get(tabId);
156
+ if (!entry)
157
+ return false;
158
+ if (entry.timer !== undefined)
159
+ clearTimer(entry.timer);
160
+ pending.delete(tabId);
161
+ notify(tabId, null);
162
+ return true;
163
+ },
164
+ isPending(tabId) {
165
+ return pending.has(tabId);
166
+ },
167
+ };
168
+ }
169
+ //# sourceMappingURL=reconnect-policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reconnect-policy.js","sourceRoot":"","sources":["../src/reconnect-policy.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,7 @@ export const BROWSER_TOOL_DEFINITIONS = [
42
42
  ],
43
43
  gotchas: [
44
44
  'Returns only tabs the user has connected manually, plus cdp-direct tabs when that optional mode is enabled and granted (off by default — see cdp-direct docs). If the list is empty, ask the user to open the extension popup.',
45
+ 'After a primary restart ("primary just closed" errors), the extension auto-reconnects dropped tabs with four backoff attempts (1s/2s/4s/8s delays, plus per-attempt connect time), keeping the same tab_id when the new primary can honour it (tab-renamed in browser.events otherwise) — so a briefly-empty list right after such an error deserves a short wait and one retry before asking the user to re-press Connect. An explicit disconnect or browser.reset never auto-reconnects.',
45
46
  'When an entry carries a map field, call browser.map.recall BEFORE snapshotting that tab — the persistent map already has selectors, gotchas, or flow recipes for it, and re-discovering them via a fresh snapshot/find wastes a round trip.',
46
47
  "A tab_id starting with cdp: (transport: 'cdp') works with every tool except browser.drag/console/network/network_body/canvas_screenshot/dialog_respond/set_permission/wait_for_tab in v1 — those (and a browser.flow drag step) return a clear error naming the extension transport as the fallback.",
47
48
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"browser-definitions.js","sourceRoot":"","sources":["../../src/tools/browser-definitions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-definitions.js","sourceRoot":"","sources":["../../src/tools/browser-definitions.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jobshimo/browser-link",
3
- "version": "0.23.8",
3
+ "version": "0.23.9",
4
4
  "description": "MCP server that bridges Claude Code, OpenCode, GitHub Copilot CLI and other MCP clients to a Chrome tab. Per-tool permissions, multi-agent mode (multiple MCP clients sharing one bridge), persistent UI map across sessions.",
5
5
  "keywords": [
6
6
  "mcp",