Commit Graph
234 Commits
Author SHA1 Message Date
ciregenz dc3d967453 [eric] release: bump version to 1.2.78 2026-06-11 04:33:19 -07:00
ciregenz 775b24d285 Merge PR #68 [aidan] bug: ui/ux fixes (back/forward disabled-state, browser-card dashboard scoping + resize, selection-overlay clipping, dashboard-duplicate carries chats)
AppShell conflict resolved: kept the lucide/redesign + folded in the back/forward disabled-state logic.
2026-06-11 02:59:30 -07:00
ciregenz e07fa73a2d [eric] mac: close-to-dock hide + window.close stub, the window cannot vanish uninvited 2026-06-11 02:05:01 -07:00
ciregenz f8afdf6b37 [eric] mac: window close no longer quits the app, dock reopen + quit-cause forensics 2026-06-11 01:40:59 -07:00
AidanandGitHub b6db089c21 [aidan] fix: scope browser cards to their origin dashboard so they stop leaking across dashboards (#72)
The backend already broadcasts the originating dashboard_id with every browser_card_added, but the frontend was throwing it away. Browser cards live in a single global Redux dict and the canvas rendered all of them unfiltered, so a browser spawned by an agent on dashboard A would appear in whatever dashboard the user was currently viewing.

Tag every card with its dashboard_id (at WS arrival and at fetchLayout hydration) and filter by it in useDashboardSelectors so render, bounds, layout save, and keyboard nav all see only the local dashboard's cards.
2026-06-11 00:29:08 -07:00
abccodes 4caceab927 [aidan] fix: selector doesnt go outside of chat box 2026-06-10 19:11:22 -07:00
ciregenz 0bf2eb37f6 [eric] desktop: renderer self-heals a stale backend port, fixes the post-signin CORS wall 2026-06-10 17:37:57 -07:00
ciregenz f38f478486 [eric] release: bump version to 1.2.77 2026-06-10 01:53:53 -07:00
ciregenz aaa72e9169 [eric] release: bump version to 1.2.76 2026-06-09 22:44:56 -07:00
ciregenz 09fc33beaf [eric] release: bump version to 1.2.75 2026-06-09 03:02:16 -07:00
ciregenz 4e78925395 [eric] release: bump version to 1.2.73 2026-06-08 14:56:24 -07:00
ciregenz 7238f86346 [eric] electron: silence the per-CDP-node ipc.handle log spam (hundreds per page read); OPENSWARM_DIAG_IPC=1 restores the firehose 2026-06-08 12:59:13 -07:00
ciregenz 1d4542bbf1 [eric] electron: race CDP sendCommand with 10s timeout, recycle debugger attachment on hang 2026-06-05 11:47:28 -07:00
ciregenz 79492416aa [eric] electron: disable renderer backgrounding, hidden-window agent webviews stopped executing JS 2026-06-05 00:53:23 -07:00
ciregenz f79172835e [eric] browser: block autoplay in agent webviews and reload a hung renderer to fight the wedge 2026-06-04 17:05:54 -07:00
ciregenz 2640930380 [eric] browser: add BrowserGetConsole so a stuck agent can read the page's console errors 2026-06-04 13:20:39 -07:00
ciregenz ad75228abe [eric] browser: guard capture-page on churning webviews to dodge the V8 crash 2026-06-04 11:26:50 -07:00
ciregenz f121fa442c [eric] browser: surface a redacted concrete route example so the agent can compose replay_route with {{value}} 2026-06-03 13:17:57 -07:00
ciregenz e0359e0752 [eric] browser: passively capture redacted shadow-API routes while browsing (tier 2) 2026-06-02 04:08:10 -07:00
ciregenz 74fbef0bc4 [eric] browser: auto-attach OOPIF child frames and route CDP by sessionId 2026-06-02 03:55:52 -07:00
ciregenz d798b61121 [eric] release: bump version to 1.1.72 2026-06-01 15:59:13 -07:00
eric f6c1f73931 [eric] win: toggle devtools on f12 + ctrl/cmd+shift+i since the windows menu bar is hidden 2026-06-01 11:55:17 -07:00
eric eb70337b00 [eric] mac: after a crash relaunch user sees a tiny 'we had a hiccup, sessions are still here' chip for 8s instead of nothing 2026-05-31 22:22:13 -07:00
eric 91d68985de [eric] docs: precedences for crash mitigations (silent in both directions, per-platform, every guard not most) 2026-05-31 21:52:38 -07:00
eric f325bc28c3 [eric] mac: chromium occlusion-feature flag dodge plus a watchdog that quietly relaunches on crash (5 guards so it never false-fires) 2026-05-31 21:52:08 -07:00
eric 0ed5457ca2 [eric] docs: record hardening precedences (compaction trims, ssrf is async loopback-allowed, ports must be stable) 2026-05-31 18:13:06 -07:00
eric 3b42f608ad [eric] fix: pin packaged frontend server to port 4173 so localstorage survives restart and onboarding doesnt retrigger every update 2026-05-31 18:09:36 -07:00
ciregenz 496bea736d [eric] win: match the legacy NSIS uninstall entry by DisplayName -like 'OpenSwarm*' (NSIS appends the version, exact match found nothing) 2026-05-30 03:03:49 -07:00
ciregenz c6cdb982fa [eric] release: bump squirrel to 1.1.71 (first squirrel release version / migration target) 2026-05-30 01:17:10 -07:00
ciregenz 78eedf18c4 [eric] win: squirrel firstrun silently removes the legacy NSIS install (NSIS->Squirrel migration cleanup, deferred to quit, best-effort) 2026-05-30 01:17:10 -07:00
ciregenz abf2daf0da [eric] win: fold proven squirrel autoUpdater fixes into squirrel (non-throwing check, event-signature normalization, already-running guard) 2026-05-30 01:06:11 -07:00
ciregenz be8d6fd081 [eric] win: switch product to squirrel target + wire built-in autoUpdater on the RELEASES feed 2026-05-29 22:22:43 -07:00
ciregenz ac31593eda [eric] win: handle Squirrel install events so the app makes its Start Menu/Desktop shortcut 2026-05-29 19:41:03 -07:00
ciregenz 06dde355a5 [eric] build: pin electron-builder-squirrel-windows so the -Squirrel target is build-safe 2026-05-29 18:55:24 -07:00
ciregenz 0d0bae0ba8 [eric] build: set explicit dmg.size (5g) so dmgbuild stops under-allocating the disk image 2026-05-29 16:14:58 -07:00
ciregenz 90bd4e2372 [eric] release: bump version to 1.1.70 2026-05-29 12:56:10 -07:00
Eric 99f1e56497 [eric] installer: skip Defender prewarm on silent installs to fix the install hang
- the customInstall macro runs `OpenSwarm.exe --prewarm` via nsExec::Exec,
  which is synchronous with no upper time bound. On a clean box the silent
  install launches the freshly-extracted, not-yet-signed binaries, provoking a
  cold Windows Defender scan that stalls for minutes - this hung the CI
  installer-verification step (no output for ~3m, then cancelled)
- both CI verification and production auto-updates run the installer with /S,
  so this same stall could hang a real user's auto-update
- gate the prewarm behind ${If} ${Silent} ... ${Else}: interactive first-time
  installs (where the cold-start win lands) still prewarm; silent installs skip
  it and finish promptly
- verify-installer: keep the blocking spawnSync (it must wait for the registry
  uninstall entry the gate checks) but add a 300s timeout so any future
  synchronous stall fails the gate in minutes instead of hanging the job
2026-05-28 23:39:41 -07:00
Eric 9aaf503b03 [eric] e2e: expose the redux store deterministically via webPreferences.additionalArguments, fix visibility capture (read the chromium trace from tracingComplete, resolve click targets to the control, drop the dead contextBridge ipc wrap), harden onboarding/settings/combinatorial specs and add multi-window-stress 2026-05-28 21:41:01 -07:00
Eric f1a3ec2598 [eric] electron: fix the electron 42 windows build - electronLanguages en to en-US so the renderer gets a non-empty --lang (electron 42 renamed en.pak to en-US.pak; empty locale crashed blink LCIDFromLocaleInternal with 0xC0000005), bump electron-builder 25.1.8 to 26.8.1 + migrate win.sign to signtoolOptions, after-pack hook restores the 9router node_modules eb26 drops from extraResources so the subscription service stops hanging, and verify-locale-paks + verify-router-deps gate both in verify-all 2026-05-28 21:41:01 -07:00
Eric 6353bbddda [eric] electron+e2e: close the init-script race - main reads OPENSWARM_E2E env on startup and appends an --openswarm-e2e chromium switch, preload reads the switch BEFORE any page script parses and contextBridge-exposes __OPENSWARM_E2E__=true so the production store-on-window gate fires deterministically rather than racing addInitScript against bundle parse 2026-05-28 09:38:29 -07:00
Eric b0b3bff91d [eric] ci: add dogfood-aggregator that walks the rolling manifest, computes per-platform per-check warn/fail rates, emits preflight-tunings.json with a demote list when a check exceeds 2x the false-positive tolerance, and writes a release-readiness block the v* gate reads; preflight.js loadTunings/applyTunings honors the demote list at runtime so a chronically-noisy check gets silently downgraded to warn on subsequent boots 2026-05-28 09:17:15 -07:00
Eric 7fb57cea5e [eric] electron: defer the preflight cache-write until both preflight finished AND backend-http-ready fired so a kill in the window between cannot leave a verdict=ok token that masks a real boot break on the next launch, plus honor settings.preflight_enabled and a deterministic installation_id-bucket cohort gate 2026-05-28 02:49:11 -07:00
Eric 1396372c8f [eric] electron: wire the preflight module into main next to logPreflight, honor OPENSWARM_DISABLE_PREFLIGHT=1 kill switch, fire async so it overlaps with backend spawn instead of adding to boot, emit a [preflight2] verdict line and fold the result into the boot beacon payload 2026-05-28 02:13:14 -07:00
Eric 4843d993d3 [eric] electron: add preflight module with nine env-injected checks (os, resources, appdata-writable, security-block, system-libs, network, gpu, dual-stack, clock) each wrapped by withTimeout that turns hangs into warn-not-fail, plus version-keyed cache read/write/prune so subsequent launches skip the work and a version bump deletes the stale token 2026-05-28 02:12:52 -07:00
Eric 7ce71cb29c [eric] build: bump electron from castlabs v40.7.0 to v42.0.0 wvcus so chromium goes from 144 to 146 and the windows tsf/webview segfaults the team has been ablating become unneeded 2026-05-27 20:31:33 -07:00
Eric 2a4cb96ac0 [eric] docs: record the one-line-comment rule in the precedence list 2026-05-27 19:11:12 -07:00
Eric d4aa87a320 [eric] fix: fire the boot beacon only after backend-ready, not just first-paint, so it doesnt post into a dead socket 2026-05-27 19:11:12 -07:00
Eric 9990ab8e09 [eric] feat: add boot preflight diagnostics and a silent opt-out-honored fleet boot beacon 2026-05-27 19:11:12 -07:00
Eric e2f1e89cb8 [eric] build: import the notarize esm module lazily so electron-builder stops choking on every non-mac build 2026-05-27 12:28:40 -07:00
Eric ac6ae7c7ce [eric] diagnostics: time the boot + stamp the shipped commit into the log 2026-05-27 10:19:53 -07:00