Claude Desktop (Windows MSIX): GPU process policy-killed loading bundled vk_swiftshader.dll (missing CodeIntegrity.cat) — whole app crashes on WebGL pages
Summary
On Windows (MSIX install), the GPU process is force-terminated the moment a page in the built-in Browser pane uses WebGL, and the entire desktop app crashes with it (no GPU-process relaunch). Root cause identified on the affected machine: the installed MSIX package ships app/vk_swiftshader.dll but contains no AppxMetadata/CodeIntegrity.cat, so Code Integrity Guard blocks the app's own bundled DLL.
Environment
- Claude Desktop 1.37937.1 / 1.37937.3 (also reproduced on 1.34493.1)
- Windows 11 Pro 10.0.26200
- MSIX sideload via bootstrapper (
Get-AppxPackage→SignatureKind: Developer, Status: Ok) - Happens regardless of GPU vendor (repro'd on NVIDIA RTX 5090, Intel UHD 770, and with
isHardwareAccelerationDisabled: true— no graphics driver DLLs loaded at all)
Evidence
Every crash logs GPU process gone: { reason: 'crashed', exitCode: 101457950 } (0x060C201E) in main.log, and each one correlates to the second with a Code Integrity event 3033:
| main.log crash | CodeIntegrity 3033 (vk_swiftshader.dll blocked) |
|---|---|
| 08-27 02:20:30 | 02:20:30 |
| 08-27 09:44:22 | 09:44:20 |
| 08-27 10:22:19 | 10:22:19 |
| 08-27 11:55:28 | 11:55:28 |
| 08-27 11:59:01 | 11:59:01 |
Event 3033: claude.exe attempted to load ...\app\vk_swiftshader.dll that did not meet the Microsoft signing level requirements.
Accompanied by event 3010: Code Integrity was unable to load the ...\AppxMetadata\CodeIntegrity.cat catalog. Status 0xC000003A. — and indeed the installed package directory has no AppxMetadata folder at all (top level: AppxBlockMap.xml, AppxManifest.xml, AppxSignature.p7x, app/, assets/, ...). Checked all 7 installed versions side by side: none has it.
No WER/Crashpad dump is produced (process is policy-killed, not faulting) — LocalDumps for claude.exe stays empty.
Repro
- Windows MSIX install of Claude Desktop
- In a Claude Code session, open the Browser pane on any WebGL-using page (e.g. motionelements.com, or a Cloudflare Turnstile challenge)
- GPU process needs the SwiftShader Vulkan fallback → loads bundled vk_swiftshader.dll → CIG blocks it → GPU process dies → whole app exits
Plain pages (example.com) render fine. A Cloudflare challenge served overnight killed the app unattended at 02:20 — sessions/remote control silently gone until manual relaunch.
Expected
- The MSIX package should include a CodeIntegrity catalog covering its bundled DLLs (or the GPU process shouldn't enforce a signing policy that its own SwiftShader fallback can't satisfy).
- Independently: GPU process death should not take down the entire app — Chromium normally relaunches it. A single blocked DLL currently kills all running sessions.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗