[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)

Status Open
Maintainer reply None cached
Activity 0 comments · opened Jul 26, 2026

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:

  1. 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.

  1. 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.

  1. 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.

  1. 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.

  1. 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.

  1. 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

  1. 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.

  1. Try Settings > Apps > Claude > Repair or Reset -> fails 0x80073CF0/0x80070002 because

the recorded package source %TEMP%\Claude-<random>.msix no longer exists.

  1. 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).

  1. Try non-elevated Add-AppxPackage with the downloaded MSIX -> 0x80073D28.
  2. 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.

View original on GitHub ↗