hermes-agent/apps/bootstrap-installer
brooklyn! 14fee4f112
fix(update/windows): retry handoff hermes update once on first-run crash (#39831)
The in-app updater (Hermes-Setup --update) runs `hermes update`, which lazily
imports the freshly-pulled modules — but the dependency-install step runs the
already-in-memory PRE-pull code for one invocation. When a release changes an
updater-path contract across that boundary, the FIRST update on the parked
population crashes even though the fix is already on disk.

Concretely this is #39780's `_UvResult`: its `__iter__` yields (path, bool), so
Windows `subprocess.list2cmdline([uv_bin, "pip", ...])` injects the bool and
dies with `TypeError: sequence item 1: expected str instance, bool found`
(fixed in #39820). A parked Windows user clicking Update pulls #39820 to disk,
then still crashes on the in-memory pre-merge module; only the SECOND click runs
clean. Field repro: ryanc's bootstrap.log (2026-06-05 12:41:41).

Fix: when the first `hermes update` exits non-zero (and it isn't the
concurrent-instance guard, exit 2, which a retry can't fix), retry once
automatically. The retry loads the now-current module from the start and
succeeds — so the parked user gets a working one-click update instead of a
scary crash + manual second attempt.

Verified: cargo check clean.
2026-06-05 08:37:16 -05:00
..
src Merge pull request #38312 from NousResearch/bb/installer-stderr-log-label 2026-06-03 12:17:35 -05:00
src-tauri fix(update/windows): retry handoff hermes update once on first-run crash (#39831) 2026-06-05 08:37:16 -05:00
.gitignore Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
index.html feat(installer): rename macOS installer to "Hermes" and make it a launcher (#37516) 2026-06-02 17:47:34 +00:00
package.json Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
tsconfig.json Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
tsconfig.node.json Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
vite.config.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00