18 Commits
Author SHA1 Message Date
ciregenzandClaude Opus 5 00e4336b71 [eric] build: rebind the embedded profile to the live signing cert
The profile shipped with the app listed only the certificate whose private key
was lost with the old Mac, so it would have signed the new build without
complaint and then dropped keychain-access-groups at runtime, taking passkeys
and Touch ID with it. Regenerated against the cert we can actually sign with;
the preflight added alongside it now refuses any build where the two disagree.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014wtspwSFzZmjCx9UNPAorQ
2026-08-20 11:40:00 -07:00
ciregenz eec6e5d7dc [eric] voice: mic entitlement + TCC prompt, the reason prod dictation died silently while dev worked 2026-08-03 22:54:53 -07:00
ciregenz f7720f7d32 [eric] vmp: sign-pkg wants the directory holding the app, not the app, or it finds nothing 2026-08-02 20:12:05 -07:00
ciregenz 171b4544ff [eric] vmp: find the EVS client in its own venv, PEP 668 keeps it out of system python 2026-08-02 19:54:17 -07:00
ciregenz 0d826b5daa [eric] build: drop foreign-arch native prebuilds from the app, with a release gate to keep them out 2026-07-31 00:05:54 -07:00
ciregenz f5a851c5c6 [eric] vmp: --no-ask must precede the subcommand (castlabs global flag; broke the release afterPack on both platforms) 2026-07-05 16:43:44 -07:00
ciregenz 0680c873dd [eric] merge #117: VMP-sign packaged builds so Widevine playback works 2026-07-05 16:14:57 -07:00
abccodes fe52665193 [aidan] fix/spotify-drm: VMP-sign packaged builds so Widevine playback works 2026-07-01 18:28:53 -07:00
ciregenz cfaddf1126 [eric] passkey: enable macOS Touch ID WebAuthn (electron 42.0.0->42.3.3 for the localizedReason crash fix + Developer ID provisioning profile + keychain entitlement; reject-shim now Windows-only) 2026-06-28 15:10:59 -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 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
EricandClaude Opus 4.7 45a97aa05f [eric] windows: stop nsis upgrades hitting "cannot be closed" by reaping app builder children on quit and fixing the dead orphan-killer; bump 1.1.67
- root cause: window-all-closed called killBackend() (windows: taskkill /F) BEFORE before-quit could POST /shutdown-all, so the backend died before running stop_all(), orphaning the bundled vite node.exe; a running node.exe locks its own image at resources\node\x64\node.exe, so the next nsis upgrade cannot overwrite it and surfaces appCannotBeClosed via the file-lock retry path (extractAppPackage.nsh / installUtil.nsh), not the name-based app-running check
- windows-only because mac's killBackend sends SIGTERM, letting uvicorn run its lifespan shutdown -> stop_all(); only since 1.1.64 because app builder first spawned these children on windows in bf6d7a9 (before that they died with WinError 2)
- electron/main.js: drop the premature killBackend() in window-all-closed (will-quit still kills the backend, now AFTER the reap) and raise the pre-quit reap budget from 2s to 10s to cover stop_all's parallel taskkill (up to 5s) + 3s grace
- electron/build/installer-recovery.nsh: replace the customInit orphan-killer (wmic, removed from windows 11 24H2 so it silently no-oped) with a path-scoped powershell Stop-Process; backtick-delimited for valid nsis tokenization, verified the macro compiles with makensis + the bundled nsExec plugin
- mac unaffected: will-quit already kills the backend; the app reap just runs explicitly via /shutdown-all now instead of riding on SIGTERM timing; the .nsh path is windows-only

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-26 13:30:05 -07:00
ciregenz 47c8f8f2a9 [eric] windows: prewarm Defender on install (exp.1) 2026-05-21 11:57:36 -07:00
Eric bb97438b66 [eric] windows install reliability: NSIS recovery layers + PS5.1 build-script ASCII fix
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.
2026-04-26 11:35:50 -07:00
Eric 9ff07443db [eric] windows shipping: electron-builder win+nsis + Azure Trusted Signing hook, build-app-win.ps1 / build-python-env-win.ps1 mirroring mac, release-windows.yml tag-triggered CI, icon.ico + .env.windows.example, .claude/ + .env.* gitignored. Runtime fixes: PYTHONUTF8=1 (cp1252 UnicodeDecode), python.exe / Lib\site-packages paths, PYTHONPATH path.delimiter, taskkill /T /F process tree, OAuth UA platform branch, sign-vmp postinstall via node wrapper. Backend: _resolve_command PATHEXT probing (fixes uvx not found), UV_PYTHON Windows path. Cross-env added to 9router+electron for NODE_ENV prefix on cmd. Onboarding: poll subscriptions/status while connect step is open, render Connected for active providers (was stuck on "Connect" after 30s OAuth poll timeout). 2026-04-21 18:15:49 -07:00
ciregenz ab42a9db05 [eric] fix Google Workspace MCP tools: system prompt truncation + macOS code signing 2026-03-28 10:42:35 -07:00
haikdc 7244967267 [Haik]: ckpt, (fixed production favion reference to point to logo) (implemented batch selection and movement in the dashboard) (Made header which includes: dashboard collapse icon, forward/back icons, logo) (Added Shortcuts to the rest of the items in the dashboard toolbar) (restyled the settings to look sexy) (removed the weird lil seperator in the toolbar) 2026-03-15 00:58:45 -07:00
haikdc 1632b5c9e5 [Haik]: ckpt, (Fixed view create duplication bug) (Views auto save) (MCP is star sorted by default) (reload issues in dash fixed) (electron app made) 2026-03-15 00:09:04 -07:00