hermes-agent/apps/bootstrap-installer/src-tauri/src
brooklyn! 4b7a186003
fix(desktop): retry the self-update rebuild once so the app relaunches (#48122)
The desktop self-update runs `hermes update` then `hermes desktop
--build-only`, and only relaunches if the rebuild returns 0. The first
`--build-only` can exit nonzero on a still-settling post-update tree or a
network-blocked Electron fetch that the installer's self-heal repaired
mid-run — so both updaters (the Tauri setup binary and the in-app POSIX
path) bailed before the relaunch step. The update landed but the app
never restarted; a manual launch worked because the heal had completed.

Retry `--build-only` once in both paths before failing, mirroring the
retry-once `hermes update` already does (and the CLI `hermes update`'s
own desktop rebuild). A second run builds clean off the healed dist and
is a near-no-op when the first actually succeeded (content-hash stamp).

- update.rs: retry stage 2; add rebuild_needs_retry() + test
- main.cjs: retry via new update-rebuild.cjs helper (behavior-tested)
2026-06-17 19:33:27 -05:00
..
bootstrap.rs test(installer): cover the post-update relaunch/install target derivation 2026-06-03 12:02:07 -07:00
events.rs fix(installer): stop mislabeling stdout-style progress as stderr 2026-06-03 10:38:34 -05:00
install_script.rs Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
lib.rs feat(installer): rename macOS installer to "Hermes" and make it a launcher (#37516) 2026-06-02 17:47:34 +00:00
main.rs Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
paths.rs fix(desktop): repair macOS updater helper (#40217) 2026-06-05 20:05:32 -05:00
powershell.rs test(bootstrap-installer): cover PowerShell path layout cross-platform 2026-06-06 19:59:16 -07:00
update.rs fix(desktop): retry the self-update rebuild once so the app relaunches (#48122) 2026-06-17 19:33:27 -05:00