From 0069676574ed06ff8aacb01a31cd0174cc605acb Mon Sep 17 00:00:00 2001 From: Merge Sim Date: Wed, 2 Sep 2026 18:10:51 -0700 Subject: [PATCH] fix(native-chat): back off structured session resubscribe --- .../src/runtime/local-structured-session-tabs-sync.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/renderer/src/runtime/local-structured-session-tabs-sync.ts b/src/renderer/src/runtime/local-structured-session-tabs-sync.ts index 75be14c847d..8de265eb988 100644 --- a/src/renderer/src/runtime/local-structured-session-tabs-sync.ts +++ b/src/renderer/src/runtime/local-structured-session-tabs-sync.ts @@ -169,6 +169,7 @@ async function startLocalStructuredSessionTabsSync(args: { } let subscriptionGeneration = 0 let reconnectTimer: ReturnType | null = null + let reconnectAttempt = 0 const subscribeCurrent = async (): Promise => { if (args.isDisposed()) { return @@ -193,6 +194,8 @@ async function startLocalStructuredSessionTabsSync(args: { if (reconnectTimer !== null) { clearTimeout(reconnectTimer) } + const reconnectDelay = Math.min(250 * 2 ** reconnectAttempt, 5000) + reconnectAttempt += 1 reconnectTimer = setTimeout(() => { reconnectTimer = null void refreshLocalStructuredSessionTabs() @@ -204,10 +207,10 @@ async function startLocalStructuredSessionTabsSync(args: { void subscribeCurrent().catch((error) => console.warn('[structured-session-tabs] resubscribe failed', error) ) - }, 250) + }, reconnectDelay) } }) - }, 250) + }, reconnectDelay) } } )