Windows desktop app 1.24012.11.0: updater removes its own MSIX package out from under the running app, then reinstalls the same version in a loop
Platform: Windows 10 Home 19045, x64
App: Claude desktop (MSIX, Claude_..._x64__pzs8sxrjxfjjc)
Bad build: 1.24012.11.0
Last good build: 1.24012.9.0
Summary
Since updating to 1.24012.11.0, the app disappears mid-session roughly every
20 minutes. Each time, Windows logs an Application Hang for claude.exe, and
sometimes the app comes back in a broken state telling the user to reinstall.
The cause is not the app crashing. Microsoft-Windows-AppXDeploymentServer/Operational
shows the package being removed while the app is running and then re-added.
What changed in 1.24012.11.0
Every update from 1.19367.0.0 (July 9) through 1.24012.9.0 (July 27) — eleven
of them — installed as a plain Add with Options 0, staging quietly and
registering on next launch via OnDemandRegisterOperation. No Remove, no
forced shutdown, no repair attempt, across seven weeks of daily multi-hour use.
1.24012.11.0 staged the same way (8/3 20:30, Options 0, deferred
registration). Hours later, a code path that appears nowhere in the prior
seven weeks of logs fires.
Failure sequence (event log, 8/4)
00:37:45 603 START RegisterByPackageFullName 1.24012.9.0 RepairAppRegistrationOption
00:37:45 419 error 0x80073D02: Unable to install because the following apps need to be closed
00:38:04 603 START RegisterByPackageFullName 1.24012.9.0 RepairAppRegistrationOption (retry)
00:39:22 603 START RegisterByPackageFullName 1.24012.9.0 RepairAppRegistrationOption (retry)
00:40:22 603 START Remove 1.24012.9.0 Options 0
00:40:57 Application Hang 1002: claude.exe 1.24012.9.0 stopped interacting with Windows
00:41:45 603 START Add (Claude-3379164722.msix) ForceApplicationShutdownOption,ForceUpdateFromAnyVersion
00:41:54 400 OK Add 1.24012.11.0
Note the repair targets the old version (9.0) while 11.0 sits staged.
It cannot succeed — 9.0 is running — and after three retries the fallback is
to remove the package from under the live process.
It then fails to come back
00:49:25 603 START RegisterByPackageFullName 1.24012.11.0 RepairAppRegistrationOption
00:49:26 404 FAIL 0x80073D02
00:52:23 603 START Remove 1.24012.11.0 PreserveApplicationData,RemoveForAllUsers
00:52:23 404 FAIL 0x80073CFA
00:52:23 603 START Add (Claude-943476606.msix) ForceApplicationShutdownOption,...
00:52:24 462 error 0x80070020: Creating file ...\app\resources\cowork-svc.exe failed
00:52:24 404 FAIL 0x80073CF9
CoworkVMService stays running and holds a lock on cowork-svc.exe, so the
re-Add hits a sharing violation. The package is left dangling → "you need to
reinstall this app".
And then it loops, reinstalling a version it already has
08:51:51 603 START RegisterByPackageFullName 1.24012.11.0 RepairAppRegistrationOption -> FAIL
08:52:02 603 START Remove 1.24012.11.0 Options 0
08:54:42 603 START Add -> OK 1.24012.11.0 (same version)
09:12:52 603 START Remove 1.24012.11.0 Options 0 (no repair attempt at all now)
09:13:26 Application Hang 1002: claude.exe 1.24012.11.0
09:13:46 603 START Add -> OK 1.24012.11.0 (same version again)
Each cycle re-downloads a ~246 MB Claude-<random>.msix and force-installs
11.0 over 11.0.
Why it appears self-perpetuating
The Remove runs with Options 0, not PreserveApplicationData. After the
09:13 reinstall, every folder under%LOCALAPPDATA%\Packages\Claude_pzs8sxrjxfjjc (AC, AppData, LocalCache,
LocalState, RoamingState, Settings, SystemAppData, TempState) has a
CreationTime of 09:13:55 — i.e. app-local state is wiped every cycle,
including whatever records that 11.0 is already installed. The next tick then
has no reason not to install it again.
User-visible impact
- The app vanishes mid-task with no warning or error, roughly every 20 min.
- The session history list is emptied every cycle (transcripts under
~\.claude\projects\ do survive, but the app cannot show them).
- Occasionally it lands in the dangling state demanding a reinstall.
- ~246 MB re-downloaded per cycle.
Suggested fixes
- Never escalate a failed
RepairAppRegistrationto aRemoveof a package
with a live process. The current fallback is more destructive than the
problem it repairs.
- Stop
CoworkVMServicebefore attempting any package operation — it is the
0x80070020 sharing violation on cowork-svc.exe every time.
- If a Remove is genuinely needed, use
PreserveApplicationData; wiping
app-local state on every update is what turns one bad update into a loop.
- Guard against re-installing an already-installed version.