- zip-stdlib + pyc-only gave no cold improvement (cold is native-binary-scan-bound)
- keep build lean; scripts stay as drafts; cold lever is the opt-in defender exclusion (item 5)
- pre-extracting ~30k files into resources blew the windows build past 50min (squirrel lzma on tiny files) + bloated the installer
- revert step 4b to a single node_modules.<digest>.tar.gz (mirrors mac); runtime extracts to warm cache in the background at startup (off the create path)
- runtime _bundled_extracted_modules() stays as a harmless fallback (returns None -> tar path)
- step 4b builds node_modules natively and robocopies it into resources (digest-tagged)
- runtime junctions straight at it; kills the ~14s first-app extract; non-fatal on failure
- split the single windows e2e job into parallel jobs: gate (pure-node
selftests, no build), verify (build + verify-all), playwright (build +
renderer suite). verify and playwright run concurrently so wall-clock is
max(verify, playwright), not their sum
- build the UNPACKED app on the gate path (electron-builder --dir via a new
-DirOnly switch in build-app-win.ps1), skipping the ~2min NSIS LZMA
compression. verify-all drives win-unpacked\OpenSwarm.exe; afterPack +
locale paks still run in the pack phase, and verify-update-feed skips
cleanly when no installer feed is present
- cache the heavy build inputs (bundled Python env, uv, MCP bundles) + npm
across runs, keyed on their source manifests; the build script already skips
any input already on disk, so warm builds are fast
- move the destructive installer cycle to its own job gated off routine pushes
(runs on PR-to-main / dispatch; release-windows.yml covers v* tags)
- apply the same caching to dogfood (shares cache keys, so the two warm each other)
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.