Skip to content

Update Electron to 44.5.1 to stop the Chrome Web Store crash - #1645

Merged
Sniezka1927 merged 1 commit into
mainfrom
worktree-fix-webstore-crash
Oct 9, 2026
Merged

Sniezka1927 merged 1 commit into
mainfrom
worktree-fix-webstore-crash

Conversation

@Sniezka1927

Copy link
Copy Markdown
Collaborator

What changed

OpenBot stays open when a Browser tab opens the Chrome Web Store. Before, the main process stopped
a few seconds after the page loaded, and again at each start while the tab was saved (#1637).

Cause: Electron 44.0.0 gives chrome.webstorePrivate to pages on chromewebstore.google.com, but
has no delegate for it. The first call from the store page dereferences null in the main process.
Electron 44.4.0 removes the API (electron/electron#53752, backport electron/electron#53776).

This PR updates electron from 44.0.0 to 44.5.1. 44.5.1 is the newest 44.x release that the
minimum-release-age setting allows (44.6.0 and 44.7.0 are too new). No application code changes.

Electron changes between 44.0.0 and 44.5.1 that could affect OpenBot, checked:

  • Privileged scheme names must match RFC 3986 (44.4.0): all openbot-* names in src/main/index.ts match.
  • chromeMediaSource: 'desktop' refuses WebContents ids (44.3.0): browser-recorder.ts already uses 'tab'.
  • guest-window-manager.ts adds a navigate path only for windows without createWindow; BrowserHost uses createWindow, so its popup flow is unchanged. The close event and -add-new-contents that electron-native-popup.d.ts cites are the same.

Surfaces: desktop main process and embedded browser. No change to renderer code, mobile,
apps/auth-api, IPC contracts, migrations, or documentation.

Fixes #1637

Verification

  • Narrow checks: bun run typecheck:node; the pre-commit hook ran Biome and every typecheck:* project (root package.json and bun.lock select all). bun.lock diff changes only the electron lines. Full test suite left to CI.
  • Surfaces touched are named under "What changed"
  • Manual smoke test (macOS, bun run dev, own worktree profile):
    • Repro in plain Electron with the store page (EU consent cookie set): 44.0.0 main process exits with SIGSEGV; 44.5.1 loads the page, chrome.webstorePrivate is undefined, process stays up.
    • Open the store page from the Browser address bar: page loads, app stays up.
    • Restart with the store tab saved as the active tab: tab restores, app up after 45 s.
    • window.open and a target=_blank link open new Browser tabs.
    • Close the store tab, restart: the tab does not come back.
  • No credentials, private data, generated output, or real user files are included

Not checked: Windows (the reported platform; same cause, CI builds it), production build.

Risk and security impact

Electron patch update inside 44.x. It includes upstream Chromium, V8 and Node.js 24.21.0 security
backports. No change to permissions, IPC, filesystem access, persistence, or network access.

Model: Claude Opus 5.5. Harness: Claude Code.

🤖 Generated with Claude Code

Electron 44.0.0 gives chrome.webstorePrivate to pages on
chromewebstore.google.com, but has no delegate for it. The first call
from the store page stops the main process (SIGSEGV on macOS,
EXCEPTION_ACCESS_VIOLATION on Windows). A saved store tab makes the
crash occur at each start. Electron 44.4.0 removes the API
(electron/electron#53776).

44.5.1 is the newest 44.x release that the minimum release age allows.

Fixes #1637

Co-Authored-By: Claude Opus 5.5 <[email protected]>
@github-actions

github-actions Bot commented Oct 9, 2026

Copy link
Copy Markdown
Contributor

NorbiAI Code Review

Reviewed commit: 969d81390df8

Completed: 2026-10-09 08:10:24 UTC

Verdict

No actionable findings were found in the current diff or local packaging settings.

Resolved Since Previous Review

None.

Findings

No actionable findings.

Withdrawn Findings

None.

Review details
  • Files changed: 3
  • Lines: +7 / -3
  • Diff size: 2605 bytes
  • Reviewer: gpt-6-astra, reasoning effort low
  • Scope: full PR
  • Time: 0m 13s, tokens: 19786
  • Bridge 6.1.0, Bigger Context off
  • Status: success
  • Workflow run

A finding is wrong? Comment the concrete reason it is wrong — the guard it misses,
the line that already handles it — and include /norbiai review in the same comment.
The reviewer rechecks the finding against your argument and withdraws it if the argument
holds against the code.

@github-actions

github-actions Bot commented Oct 9, 2026

Copy link
Copy Markdown
Contributor

Transfer budget

Metric main This PR Change Cap
conversationSnapshotBytes 1,388 1,388 0 1,800
firstTurnStatements 249 249 0 320
laterTurnEventBytes 14,989 14,989 0 18,000
laterTurnStatements 259 259 0 360
readConversationStatements 2 2 0 4
streamingAddedElements 3,323 3,323 0 4,400
streamingHighlightedChars 15,631 15,631 0 19,600
streamingLexedChars 10,091 10,091 0 13,100
streamingSplitChars 792,407 792,407 0 1,030,000
teamConversationBytes 1,513 1,513 0 2,000
teamConversationPageBytes 1,578 1,578 0 2,100

Compared with the last green main CI run (CI run 37902614910). Updated for commit 969d81390df8196b832122a492f21ac0b99005b9.

@github-actions

github-actions Bot commented Oct 9, 2026

Copy link
Copy Markdown
Contributor

Cloudflare preview

Open the landing preview

Updated for commit 969d81390df8196b832122a492f21ac0b99005b9.

@Sniezka1927
Sniezka1927 merged commit ae84d6f into main Oct 9, 2026
16 checks passed
@Sniezka1927
Sniezka1927 deleted the worktree-fix-webstore-crash branch October 9, 2026 10:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Windows main process exits with EXCEPTION_ACCESS_VIOLATION when loading or restoring a Chrome Web Store tab

1 participant