preload.js awaited two ipcRenderer.invoke calls before exposing
window.openswarm. Renderer code running in the gap saw the global
undefined: BrowserCard fell back to iframe mode (grey panel on sites
with X-Frame-Options), and chat-spawn calls to getAuthToken threw at
mount, crashing the renderer on Electron 40 + Windows.
Only bit Windows post-lazy-boot (ddd82ef): startBackend now loads main
while preload runs. Mac lacks the downstream native crash trigger;
pre-lazy Windows had idle IPC at preload time.
Replace awaits with sendSync against new ipcMain.on mirrors.
backendPort is assigned before any window exists, so sendSync at
preload time always finds a real value.
The render-process-gone handler called mainWindow.reload() to recover from
renderer crashes (e.g. WebGL / native / OOM in chat-spawn flows). On the
Electron 40 CastLabs build the reload re-registers a session/webview observer
that Chromium base/observer_list.h:318 refuses to add twice. The DCHECK
aborts the entire main process with exit 3, taking the app down whenever the
renderer dies.
Recreate the BrowserWindow instead: a fresh webContents has no duplicate
observers to add. The closed handler is identity-checked so the old window
teardown does not null out the new mainWindow reference.
When the 3-in-60s crash cap trips we now surface a native dialog (Reload /
Quit) instead of leaving a stuck dead window. Native dialog runs outside the
render-process-gone call stack, so its Reload button cannot itself reproduce
the DCHECK.
Bumps to 1.1.43 (re-cutting the deleted release draft).
Three changes that make Windows installs/upgrades stop stalling on the
'OpenSwarm cannot be closed' modal -- independent of the cloud OAuth
work happening on the Mac side.
v<version> release before -Publish, python-env cache skip via OPENSWARM_REBUILD_PYTHON, pip stderr wrapped to suppress PS5.1 NativeCommandError; analytics APP_VERSION
auto-derived from electron/package.json (single source of truth); OnboardingModal renders Connected state for already-active providers; gitignore fix for backend/.venv.
Bumps 1.0.25 - first version that ships Mac and Windows together.
+ webview popup dark-screen via new-window → exitFullscreen so parent stays interactive, ErrorSlime extracted to shared component and
rendered on all chat error cards (Network / Servers maxed / Plan limit / Subscription), Network issue classifier tightened to real errno
codes + retry CTA removed since edit_message-based replay was truncating successful tool history — copy now directs user to send-new-message
once WS auto-reconnects