Windows Desktop App Stuck on "Update Required" – Update Link Points to Internal go/ URL

Resolved 💬 9 comments Opened Feb 27, 2026 by jesielcarlos Closed Mar 1, 2026
💡 Likely answer: A maintainer (etraut-openai, contributor) responded on this thread — see the highlighted reply below.

What version of the Codex App are you using (From “About Codex” dialog)?

Unable to access (app blocked by mandatory update screen)

What subscription do you have?

plus

What platform is your computer?

Windows 11

What issue are you seeing?

Summary

The Codex Windows desktop app installed via Microsoft Store is currently unusable because it requires a mandatory update.

However, the update link redirects to:

go/codex-desktop

This URL does not resolve publicly and results in:

DNS_PROBE_FINISHED_NXDOMAIN

As a result, the app cannot be updated and remains completely unusable.

---

Steps to Reproduce

  1. Install Codex from Microsoft Store
  2. Launch the app
  3. App shows "Update required – This version of the application is no longer compatible."
  4. Click the update link
  5. Browser opens go/codex-desktop
  6. DNS resolution fails

---

Expected Behavior

The update link should:

  • Redirect to a publicly accessible URL
  • OR open the Microsoft Store update page
  • OR trigger an in-app update

---

Actual Behavior

The link points to an internal-only shortlink (go/) that is not accessible outside the corporate network.

This blocks all external users from using the app.

<img width="1319" height="839" alt="Image" src="https://github.com/user-attachments/assets/167e274e-7e87-4977-b0b4-24f391a56e64" />

<img width="1765" height="752" alt="Image" src="https://github.com/user-attachments/assets/91bd78c0-44a8-4060-88d5-5079f7c47d01" />

What steps can reproduce the bug?

  1. Install Codex from Microsoft Store
  2. Launch the app
  3. App shows "Update required – This version of the application is no longer compatible."
  4. Click the update link
  5. Browser opens go/codex-desktop
  6. DNS resolution fails

What is the expected behavior?

The update link should:

  • Redirect to a publicly accessible URL
  • OR open the Microsoft Store update page
  • OR trigger an in-app update

Additional information

_No response_

View original on GitHub ↗

9 Comments

Encapsulation · 4 months ago

Solution:

Primary upstream issue (what OpenAI shipped broken)

The Windows Store Codex desktop app (OpenAI.Codex build line 26.227.1113.x) can hard-block on Update required, but the update path is broken for external users:

  • UI may point to an internal shortlink (go/codex-desktop) that is not publicly resolvable (DNS_PROBE_FINISHED_NXDOMAIN).
  • This makes the app unusable even though the user installed from Microsoft Store.

In short: the app shipped with a broken public update flow.

---

Additional failure modes seen from same release path

  1. Editing Store app.asar in place causes startup crash:
  • Integrity check failed for asar archive ...
  1. Extracted/unpackaged runs can:
  • attempt dev renderer instead of bundled renderer (blank/black UI),
  • show hard “unsupported version” sunset gate,
  • fail to find local codex.exe unless explicitly provided.

---

How the fix works, step by step:

It avoids Store ASAR tamper protection.
The Microsoft Store app verifies app.asar integrity at launch, so direct edits crash. The script copies the app out of WindowsApps, extracts app.asar, and runs that extracted app with a separate Electron runtime.

It forces bundled UI instead of dev localhost.
In unpackaged mode, the app can try to load a dev renderer URL (localhost). The patch changes that logic so dev renderer is used only when CODEX_FORCE_DEV_RENDERER=1; otherwise it loads bundled webview/index.html.

It bypasses the “unsupported version” sunset gate.
The renderer has a feature-gate check (2929582856) that can show the blocking “no longer supported” screen. The patch hard-disables that check.

It ensures backend binary resolution.
CODEX_CLI_PATH is set to the copied codex.exe so the GUI can spawn its local backend reliably.

It launches with clean env.
The launcher clears conflicting Electron env vars and starts the extracted app with the standalone Electron binary.

Expected result
App opens and renders full Codex UI (not blank).
No ASAR integrity crash.
No “unsupported version” blocking screen.
Local backend starts via CODEX_CLI_PATH.

Workaround (fully reproducible from fresh install)

This is a local workaround until an official fixed Store build is published.

Prereqs

  • Microsoft Store app installed: OpenAI.Codex
  • Node.js + npm installed

PowerShell (copy/paste)

$ErrorActionPreference = 'Stop'

$pkg = Get-AppxPackage OpenAI.Codex
if (-not $pkg) { throw "OpenAI.Codex package not found" }

$src = $pkg.InstallLocation
$root = "$env:LOCALAPPDATA\CodexPatched"
$app = "$root\app"
$work = "$root\work"
$runner = "C:\tmp\electron-runner"

New-Item -ItemType Directory -Force -Path $app,$work,$runner | Out-Null
Copy-Item "$src\*" $app -Recurse -Force

if (-not (Test-Path "$runner\node_modules\electron\dist\electron.exe")) {
  Push-Location $runner
  npm init -y *> $null
  npm i electron@40.0.0 asar --silent
  Pop-Location
}

& "$runner\node_modules\.bin\asar.cmd" extract "$app\resources\app.asar" "$work\extracted"
Copy-Item "$app\resources\codex.exe" "$work\codex.exe" -Force

# Patch 1: only use dev renderer if explicitly forced
$main = "$work\extracted\.vite\build\main.js"
$mainTxt = Get-Content $main -Raw
$mainTxt = $mainTxt -replace ',!R\.app\.isPackaged\)\{const M=new URL\(BV\(\)\);', ',!R.app.isPackaged&&process.env.CODEX_FORCE_DEV_RENDERER==="1"){const M=new URL(BV());'
Set-Content $main $mainTxt -NoNewline -Encoding UTF8

# Patch 2: bypass sunset gate that blocks UI
$indexJs = (Get-ChildItem "$work\extracted\webview\assets\index-*.js" | Sort-Object LastWriteTime -Descending | Select-Object -First 1).FullName
$webTxt = Get-Content $indexJs -Raw
$webTxt = $webTxt -replace 'const s=Cs\(i\);if\(r\)\{','const s=!1;if(r){'
Set-Content $indexJs $webTxt -NoNewline -Encoding UTF8

# Launcher
$launcher = "$env:USERPROFILE\Desktop\Run-Codex-Patched.cmd"
@"
@echo off
set "ELECTRON_RUN_AS_NODE="
set "ELECTRON_RENDERER_URL="
set "BUILD_FLAVOR=internal-alpha"
set "NODE_ENV=production"
set "CODEX_FORCE_DEV_RENDERER="
set "CODEX_CLI_PATH=$work\codex.exe"
start "" "$runner\node_modules\electron\dist\electron.exe" "$work\extracted"
"@ | Set-Content $launcher -Encoding ASCII

Write-Host "Launcher created: $launcher"
Launch
Run:
%USERPROFILE%\Desktop\Run-Codex-Patched.cmd
uilton-oliveira · 4 months ago

Thanks a lot for sharing the workaround.

In my case, I only had to refine a few points to make it stable: fixing copy/path handling, pointing CODEX_CLI_PATH to the correct backend (resources\\codex.exe), and using a safer targeted patch for the 2929582856 sunset gate to avoid black-screen/runtime issues.

Updated correction:
https://gist.github.com/uilton-oliveira/c9c3e54700b3c50d54286db6a77ac510

etraut-openai contributor · 4 months ago

If you're seeing this, it means that you are not currently part of the alpha program.

carabinshely · 4 months ago

etraut-openai, how to run it on Windows if the fix is not planned?

etraut-openai contributor · 4 months ago

@carabinshely, you will be able to run it once it reaches general availability. Right now, it's in alpha, and only select users who signed up early on the waitlist have been granted access. We're rolling it out in stages as we work out the bugs.

atomimus-dev · 4 months ago

@etraut-openai
How does the app know if I’m on the waitlist if I haven’t even signed in?

Encapsulation · 4 months ago
etraut-openai, how to run it on Windows if the fix is not planned?

Using the solution I posted above.

etraut-openai contributor · 4 months ago

@Encapsulation, the Windows app is now generally available as of 24 hours ago, so it should now work for everyone. Have you tried downloading and running the app in the last day?

Encapsulation · 4 months ago
@Encapsulation, the Windows app is now generally available as of 24 hours ago, so it should now work for everyone. Have you tried downloading and running the app in the last day?

Yes, all working. Thank you