From cbe298f4e3d774ef0375d8565f89dfb026dec335 Mon Sep 17 00:00:00 2001 From: Steve Zhang Date: Thu, 14 May 2026 22:22:24 -0400 Subject: [PATCH] fix: remove alarms permission from Chrome extension The alarm was added in #650 to keep the offscreen document alive for the bridge WebSocket. The bridge was removed in v0.27.0 but the alarm remained. The offscreen document's own setInterval (10s health check) prevents Chrome from killing it, making the alarm redundant. Closes #906 Co-Authored-By: Claude Opus 4.6 (1M context) --- packages/extension/public/manifest.json | 1 - packages/extension/src/background.ts | 8 -------- 2 files changed, 9 deletions(-) diff --git a/packages/extension/public/manifest.json b/packages/extension/public/manifest.json index 00bd8d38..02eed2f8 100644 --- a/packages/extension/public/manifest.json +++ b/packages/extension/public/manifest.json @@ -10,7 +10,6 @@ "debugger", "storage", "windows", - "alarms", "scripting", "tabCapture", "webNavigation", diff --git a/packages/extension/src/background.ts b/packages/extension/src/background.ts index a2fa883f..b7bcfb47 100644 --- a/packages/extension/src/background.ts +++ b/packages/extension/src/background.ts @@ -116,14 +116,6 @@ chrome.management.getSelf().then(async (info) => { } }); -// Re-check offscreen doc periodically — Chrome may kill it after idle. -chrome.alarms.create('ensure-offscreen', { periodInMinutes: 1 }); -chrome.alarms.onAlarm.addListener((alarm) => { - if (alarm.name === 'ensure-offscreen') { - ensureOffscreenRelay().catch(() => {}); - } -}); - // ─── Settings + Action (sidepanel / popup) ─────────────────────────────────── // Disable auto-open so action.onClicked fires (Chrome persists this across reloads)