Describe the feature or problem you'd like to solve
when copilot is requested to update itself, it downloads a package and then installs it. if the installation fails for whatever reason, the next update request downloads the package once again without trying to reuse the previously downloaded update
Proposed solution
Here is a shell snippet indicating the fact that Copilot tries to redownload the update package when the previous attempt to update failed
Caching binaries in the local filesystem can avoid this and isn't a bad idea until the next update arrives
~/git-repos$ copilot update
Checking for updates...
Checking GitHub for the latest release...
Update available: v1.0.84-3 (current: 1.0.84-1).
Downloading update package...
Download complete. Installing...
Error during update: Failed to download package: Error: EPERM: operation not permitted, rename 'C:\Users\myself\.copilot\pkg\tmp\1.0.84-3-13492-1789030021787' -> 'C:\Users\myself\.copilot\pkg\win32-x64\1.0.84-3'
~/git-repos$ copilot update
Checking for updates...
Checking GitHub for the latest release...
Update available: v1.0.84-3 (current: 1.0.84-1).
Downloading update package...
Download complete. Installing...
Copilot CLI version 1.0.84-3 installed.
### Example prompts or workflows
_No response_
### Additional context
_No response_
Describe the feature or problem you'd like to solve
when copilot is requested to update itself, it downloads a package and then installs it. if the installation fails for whatever reason, the next update request downloads the package once again without trying to reuse the previously downloaded update
Proposed solution
Here is a shell snippet indicating the fact that Copilot tries to redownload the update package when the previous attempt to update failed
Caching binaries in the local filesystem can avoid this and isn't a bad idea until the next update arrives