[BUG] Windows MSIX servicing: updater registers into hung app (0x80073D02); repair source deleted from %TEMP% (0x80073CF0); container-locked files block reinstall (0x80073CF6); package service requires elevation (0x80073D28)
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
After the desktop app hangs (companion issue: #81265 ), a chain of servicing design issues
makes recovery require a full reinstall — sometimes several attempts plus reboots. All
error codes below are from the AppXDeployment-Server operational log of 2026-07-25/26:
- UPDATER REGISTERS INTO A HUNG APP: the auto-updater staged updates while the app was
hung; registration failed 7x with 0x80073D02 ("package files in use") against the hung
processes (18:10–19:06 on 07-25), leaving the package half-updated and unlaunchable.
- WINDOWS REPAIR/RESET PERMANENTLY BROKEN: "Claude Setup.exe" installs from
%TEMP%\Claude-<random>.msix and the file is deleted afterwards. Windows keeps that path
as the package source, so every later repair/re-stage fails with 0x80073CF0/0x80070002
(104 deployment errors on 07-25 alone). The Settings "Repair"/"Reset" buttons are
structurally dead for every user of this app.
- chrome-native-host.exe LIVES INSIDE THE PACKAGE CONTAINER: the app copies the Chrome
native-messaging host to %APPDATA%\Claude\ChromeNativeHost\; MSIX filesystem
virtualization maps this into LocalCache INSIDE the container. Chrome runs this exe as
its own child and respawns it ~18 s after app start. During removal Windows cannot
delete the app data (38x event 5224 in one day) and AddPackage fails with
0x80070020/0x80073CF6/0x80073D05.
- ANY PROCESS WITH PACKAGE IDENTITY BLOCKS REMOVAL: orphaned children of embedded
sessions (node MCP servers, hook powershells, bash/cmd/ssh) keep the container's
virtualized registry hives (SystemAppData\Helium\User.dat) open. Verified live via
GetPackageFullName: 15 processes still held the container after the app itself was
killed. Removal then fails 0x80073CF6 until every one is terminated or the machine
reboots.
- PACKAGE SERVICE REQUIRES ELEVATION: the 1.24012.9 MSIX contains a package service, so a
non-elevated Add-AppxPackage of the officially downloaded MSIX fails with 0x80073D28 —
user-side recovery cannot reinstall offline without UAC.
- CRASH EVIDENCE IS DESTROYED ON RECOVERY: every Remove/Add wipes
LocalCache\Roaming\Claude\logs, so the logs of the fatal window are lost on every
recovery cycle — three crash rounds in a row have no app-side logs left.
Impact: 7 reinstalls and 2 forced reboots within 36 hours for a single user; each recovery
also wiped preferences and app state.
What Should Happen?
- Updater should detect an unresponsive/hung instance before registering an update (or
terminate it first).
- Keep a package source copy outside %TEMP% (or register a durable AppInstaller source) so
Windows Repair/Reset keeps working.
- Move the native-messaging host binary out of the container, or have servicing terminate
it before removal.
- Write/preserve app logs outside the container so crash evidence survives recovery.
- Document/handle the elevation requirement of the package service.
Error Messages/Logs
0x80073D02 ERROR_PACKAGES_IN_USE 7x, 2026-07-25 18:10–19:06 (register into hung app)
0x80073CF0 / 0x80070002 104x, 2026-07-25 (repair source %TEMP%\Claude-*.msix missing)
0x80070020 / 0x80073CF6 / 0x80073D05 reinstall blocked, app data not deletable (event 5224, 38x)
0x80073D28 2026-07-26 00:36:27, non-elevated Add-AppxPackage of official MSIX
2026-07-25 22:53:20 boot-time cleanup of package app data FAILED, package dropped from delete list
Steps to Reproduce
- Let the app hang under memory pressure (see #XXXXX) while the auto-updater has staged
an update -> registration fails 0x80073D02, package left half-updated, app unlaunchable.
- Try Settings > Apps > Claude > Repair or Reset -> fails 0x80073CF0/0x80070002 because
the recorded package source %TEMP%\Claude-<random>.msix no longer exists.
- Kill claude.exe and run "Claude Setup.exe" again while Chrome is running -> AddPackage
fails 0x80070020/0x80073CF6/0x80073D05 (chrome-native-host.exe and Helium hives held).
- Try non-elevated Add-AppxPackage with the downloaded MSIX -> 0x80073D28.
- Only a reboot followed by reinstall recovers; app data including logs is wiped each time.
Claude Model
None
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
Desktop app 1.24012.9 (MSIX, package family Claude_pzs8sxrjxfjjc)
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
PowerShell
Additional Information
Windows 11 Pro build 10.0.26200. Full AppXDeployment/WER event log exports and a forensic
timeline available on request.