mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-11-06 05:17:15 +00:00
Windows PowerShell's Move-Item falls back to a file-by-file copy when a directory rename is refused. When a file is held without delete sharing (Defender scanning freshly extracted files, a lingering post-install child), the copy stops at that file. cmd\git.exe has already landed in the store by then and git-remote-https has not: this is the broken tree from the Discord report. A windows-latest probe reproduces it on both same-volume and cross-volume moves. Stage the extract beside the entry under the store root (.staging-*, the prefix pm gc already reclaims), so the last step is a single [IO.Directory]::Move on one volume that moves all or nothing. Retry moves and deletes refused by a temporary hold (1+2+4+8+16 s, like pm's Store.publish). A hold that never clears now fails with a message naming the folder.