Skip to content

fix(desktop): hand off Windows bootstrap recovery - #45594

Merged
teknium1 merged 1 commit into
mainfrom
hermes/hermes-189c3afb
Jun 13, 2026
Merged

fix(desktop): hand off Windows bootstrap recovery#45594
teknium1 merged 1 commit into
mainfrom
hermes/hermes-189c3afb

Conversation

@teknium1

Copy link
Copy Markdown
Contributor

Summary

Windows Desktop recovery now hands broken bootstrap installs back to Hermes Setup so the running app releases app.asar before installer repair touches the checkout.

Changes

  • Desktop main process: when packaged Windows resolves to bootstrap-needed, spawn staged hermes-setup.exe in detached recovery mode and quit instead of running install.ps1 from inside the app bundle that is still holding app.asar.
  • Bootstrap updater: wait on both the venv shim and packaged resources/app.asar before update/repair proceeds, then force-kill Hermes stragglers if either stays locked.
  • Regression coverage: static child-process test documents the Windows handoff path; Rust lock-probe unit tests cover app.asar lock targets.

Validation

Check Result
node --check apps/desktop/electron/main.cjs pass
node --test --test-name-pattern "intentional or interactive desktop child processes stay documented" apps/desktop/electron/windows-child-process.test.cjs pass
git diff --check origin/main..HEAD pass
cargo test lock --manifest-path apps/bootstrap-installer/src-tauri/Cargo.toml blocked locally: Linux host is missing dbus-1.pc / libdbus-1-dev, before tests compile

Root cause from the user logs: repair/bootstrap was trying to remove apps/desktop/release/win-unpacked/resources/app.asar while the packaged Desktop process still had that asar loaded.

Infographic

desktop-update-recovery

@github-actions

Copy link
Copy Markdown
Contributor

🔎 Lint report: hermes/hermes-189c3afb vs origin/main

ruff

Total: 0 on HEAD, 0 on base (➖ 0)

🆕 New issues: none

✅ Fixed issues: none

Unchanged: 0 pre-existing issues carried over.

ty (type checker)

Total: 10890 on HEAD, 10890 on base (➖ 0)

🆕 New issues: none

✅ Fixed issues: none

Unchanged: 5713 pre-existing issues carried over.

Diagnostics are surfaced as warnings — this check never fails the build.

@teknium1
teknium1 merged commit aa53a78 into main Jun 13, 2026
32 of 33 checks passed
@teknium1
teknium1 deleted the hermes/hermes-189c3afb branch June 13, 2026 12:54
AIalliAI pushed a commit to AIalliAI/Hermes that referenced this pull request Jun 14, 2026
T02200059 pushed a commit to T02200059/hermes-agent that referenced this pull request Jun 18, 2026
waefrebeorn pushed a commit to waefrebeorn/slermes that referenced this pull request Jul 2, 2026
habarmc1223-sudo pushed a commit to habarmc1223-sudo/hermes-agent-fluxmem that referenced this pull request Jul 8, 2026
santhreal pushed a commit to santhreal/hermes-agent that referenced this pull request Jul 13, 2026
donbowman pushed a commit to donbowman/hermes-agent that referenced this pull request Jul 13, 2026
Gravezzz pushed a commit to Gravezzz/hermes-agent that referenced this pull request Jul 21, 2026
leewenjie pushed a commit to leewenjie/hermes-agent that referenced this pull request Aug 7, 2026
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.

1 participant