Files
hermes-agent/hermes_cli
teknium1 305072f4a6 fix(update): give git-less Windows installs PM's git for update and source completion
On a Windows machine with no git, scripts/install.ps1 stages the pinned Git
for Windows into the pm store for its own process only, and pm's facts
never record it. Every later product process that ran a bare `git` failed:

- `hermes update` died before its first step:
  "✗ Update failed: [WinError 2] The system cannot find the file specified"
- the source completion that finishes an installer re-run or an update
  found no commit, deleted the install stamp, and the next boot wrote an
  adoption stamp that names no commit. It also printed
  "Could not refresh release history ([WinError 2] ...)".

expose_pm_git(): when Windows resolves no git, ensure PM's git explicitly
(both callers are user-initiated, like ensure_tools_for_sync) and put its
composed PATH (cmd and usr\bin) on the process, so children inherit it.
The update calls it before its first git, and the source completion calls it
before its builds and stamp. A machine with a working git is untouched.
main_desktop already ensures PM's git for its build for the same reason.
2026-09-27 02:54:03 -07:00
..
…
…
…
…
…
…
…
…