[Windows][26.721.4979.0] DOM inspection triggers Code Integrity 3033 for unsigned vk_swiftshader.dll, then MSIX remediation

Resolved 💬 2 comments Opened Jul 28, 2026 by prcapital Closed Jul 28, 2026
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

Summary

On Codex Desktop for Windows 26.721.4979.0, two separate in-app Browser DOM-inspection operations produced the same deterministic failure sequence:

  1. Browser DOM inspection begins.
  2. Windows Code Integrity Event ID 3033 rejects the packaged app\vk_swiftshader.dll when loaded by ChatGPT.exe.
  3. AppModel Runtime immediately reports machine-level package-status failures (0x3CFC).
  4. Windows destroys the Codex Desktop AppX container.
  5. The Codex package becomes unlaunchable and requires MSIX registration repair/restaging.

This occurred twice on the same installation against unrelated authenticated websites. No package update, uninstall command, recursive deletion, or filesystem mutation was running when either failure began.

The evidence strongly localizes the proximal failure to the packaged Chromium GPU/SwiftShader path and its binary-signature mitigation, rather than the visited site or the agent's shell activity. The exact reason the subsequent GPU/browser failure changes the MSIX package state to Modified still requires maintainer-side analysis.

Environment

  • Product: Codex Desktop for Windows, Microsoft Store/MSIX
  • App package: OpenAI.Codex_26.721.4979.0_x64__2p2nqsd0c76g0
  • Browser plugin/runtime: 26.721.41059
  • OS: Windows 11 Pro x64, 10.0.26200
  • GPU 1: NVIDIA GeForce RTX 4050 Laptop GPU, driver 32.0.15.9608
  • GPU 2: Intel Arc Graphics, driver 32.0.101.8724
  • Package signature kind after reinstall: Store
  • Package status after reinstall: Ok

Local usernames, hostnames, account identifiers, task identifiers, and visited URLs are intentionally omitted.

Reproduction sequence

Incident 1

  • An in-app Browser operation inspected DOM/page state on an authenticated website.
  • Code Integrity Event 3033: 2026-07-27 16:49:10.677 PDT
  • AppModel Runtime Event 217 destroyed the Codex AppX container: 16:49:13.248
  • Codex disappeared without an Application Error or WER crash event and became unlaunchable.

Incident 2

After reinstalling the same Store build:

  • An in-app Browser domSnapshot() operation completed at approximately 2026-07-27 17:18:39 PDT on a different authenticated website.
  • Code Integrity Event 3033: 17:18:40.275
  • AppModel Runtime Event 6 began reporting 0x3CFC: 17:18:40.622
  • AppModel Runtime Event 217 destroyed the Codex AppX container: 17:18:41.338
  • Codex again became unlaunchable.

Observed reproduction rate for this exact Browser-inspection-to-package-failure sequence: 2/2.

Code Integrity evidence

The Event 3033 XML from the second incident contains:

EventID: 3033
ProcessNameBuffer: \Device\HarddiskVolume...\WindowsApps\OpenAI.Codex_26.721.4979.0_x64__2p2nqsd0c76g0\app\ChatGPT.exe
FileNameBuffer: \Device\HarddiskVolume...\WindowsApps\OpenAI.Codex_26.721.4979.0_x64__2p2nqsd0c76g0\app\vk_swiftshader.dll
RequestedPolicy: 8
ValidatedPolicy: 1
Status: 3221226536 (0xC0000428)

The correlated Event 3089 records:

ValidatedSigningLevel: 6
VerificationError: 16

The first incident has the same Event 3033 fields and the same Event 3089 validation result, under a different correlation/activity ID.

The currently installed file reports:

Get-AuthenticodeSignature: NotSigned
SHA-256: 2C8F89FA26945207260B9B019F7E1A2F4F6820741B783561F729DC13C7E82C7E

Windows' Event 3033 message is explicit that ChatGPT.exe attempted to load vk_swiftshader.dll and that the DLL did not meet the Microsoft signing-level requirements.

AppModel/MSIX sequence

At the second failure, AppModel Runtime repeatedly logged:

0x3CFC: Cannot create the process ... because an error was encountered while checking the machine-level package status. The application cannot be started. Try reinstalling the application to fix the problem.

Event 217 then destroyed the Desktop AppX container.

At 17:20:43 and 17:20:45, Windows initiated RegisterByPackageFullName with RepairAppRegistrationOption. Subsequent package remediation cleared state 0x2 to 0x0.

Importantly, there was no AppX Remove operation at 17:18 when the application disappeared. The only formal Remove transaction occurred much later at 17:54:04, during user-initiated recovery, and its Event 603 XML identifies:

DeploymentOperation: 2
CallingProcess: SystemSettings.exe

The Store then installed the same version again at 17:55. This distinguishes the original failure from an auto-update or agent-initiated uninstall: the application first became unlaunchable because of the Browser/Code Integrity/AppModel sequence; the later formal removal was part of recovery.

The associated Codex task transcript contains no Remove-Item, Remove-AppxPackage, winget uninstall, recursive delete, or other destructive command before either incident. The active project repository also remained clean and intact.

Expected behavior

  • DOM inspection should not trigger a GPU/browser-process failure.
  • A packaged Browser dependency should satisfy the child process's effective signing policy or use a compatible fallback path.
  • Failure to initialize SwiftShader should degrade into a recoverable Browser error.
  • A Browser/GPU child failure must not terminate the parent Codex application or change the MSIX package to Modified, NeedsRemediation.
  • Codex should remain launchable without Windows Repair or reinstall.

High-confidence interpretation

The immediate, reproducible boundary appears to be:

Browser DOM inspection
→ packaged Chromium GPU/SwiftShader path
→ Code Integrity rejects vk_swiftshader.dll under requested signing policy
→ Chromium GPU/browser failure
→ AppModel package-status failure
→ Desktop AppX container destroyed
→ MSIX remediation required

What remains unproven locally is why the browser/GPU failure causes or coincides with package state 0x2, and whether a second native Chromium fault occurs between Event 3033 and AppModel container destruction.

A product fix likely needs to do one or more of the following while keeping Windows Code Integrity enabled:

  • ship vk_swiftshader.dll with a signing level accepted by the GPU child;
  • configure a compatible Store-signed-binary policy for the child process;
  • avoid loading SwiftShader when the active mitigation will reject it and use the Windows fallback path;
  • isolate GPU/browser child failure from the main Codex process and persisted Browser state;
  • add a Windows/MSIX regression test covering DOM reads, DOM snapshots, CDP operations, and screenshots with Code Integrity enabled.

Relationship to existing reports

This report may share an upstream cause with:

  • #34133 — Code Integrity 3033 and vk_swiftshader.dll, primarily demonstrated through screenshot capture on an earlier build.
  • #35290 — same current Store build becoming Modified, NeedsRemediation after opening a page, without the detailed Code Integrity/AppX caller correlation.
  • #35311 — broader Browser/package-remediation incident on the same build.
  • #32683 — native CrBrowserMain / chrome.dll failure after in-app Browser DOM-ready.

The additional evidence here is the repeatable 2/2 DOM-inspection correlation, identical Event 3033 XML across both incidents, verification that the installed DLL has no embedded Authenticode signature, and the AppX deployment audit distinguishing the initial package invalidation from the later Settings-initiated uninstall.

Sanitized Event Viewer exports can be provided if maintainers need them. Raw task transcripts and dumps are not being posted publicly because they can contain session data and authenticated-site metadata.

View original on GitHub ↗

2 Comments

github-actions[bot] contributor · 1 month ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #35352
  • #35411
  • #35635
  • #35290
  • #35681

Powered by Codex Action

prcapital · 1 month ago

Closing as a duplicate of #35352. The additional two-incident Code Integrity/AppModel timeline and AppX caller audit have been consolidated into #35352: https://github.com/openai/codex/issues/35352#issuecomment-5099456561