You'll notice
Update staging folders now get a random suffix and are always cleaned up afterward
What
When Claude Code downloads a native update (including during a force reinstall), the temporary staging folder it uses now includes a random 4-byte hex string in its name, in addition to the process id and timestamp it already used, to avoid name collisions. The staging folder is now also always removed afterward, whether the update succeeded or failed, with a warning logged if removal itself fails.
Why
This prevents leftover staging folders from update attempts, whether from naming collisions or from failed cleanup, from piling up on your machine.