Skip to content

Codex update through mise does nothing when Codex is installed as npm:@openai/codex, while T3 reports it as completed #36470

Closed

Description

@NorthPhoenix

What happened

In Settings → Providers, Codex on a remote Ubuntu server said it was outdated (0.160.0, latest 0.167.2). Clicking Update reported success, but Codex stayed at 0.160.0 and T3 still showed it as outdated.

Diagnosis

The Codex driver tells mise the tool is codex (apps/server/src/provider/Drivers/CodexDriver.ts:84, mise: { tool: "codex" }). resolveMiseProviderMaintenance builds ["upgrade", miseTool] from that (packages/provider-core/src/server/maintenanceResolver.ts:578 at v0.1.10-nightly.20261111.4529; line 657 on main).

On this host, Codex is installed in the global mise config as "npm:@openai/codex" = "latest". mise's registry maps the short name codex to aqua:openai/codex and npm:@openai/codex. Every check T3 runs before updating accepts the short name and resolves it to the npm install:

  • mise which codex → ~/.local/share/mise/installs/npm-openai-codex/latest/node_modules/.bin/codex
  • mise ls --json --installed codex → the npm-openai-codex installs, active one requested_version: "latest"
  • mise latest codex → 0.167.2

So T3 decides mise owns this install and can upgrade it. But mise upgrade codex doesn't match the npm:@openai/codex config entry. It prints All tools are up to date and exits 0, so the update "completes" and nothing changes. mise upgrade npm:@openai/codex works.

This path came in with #21524. Its verification used a config where the tool is requested by its short name. A likely fix is to run mise upgrade with the configured tool's full name rather than the driver's short name. One way is to take it from the source config, or from the backend that owns the matched install. Claude's driver uses the same short-name pattern (mise: { tool: "claude" }) and may have the same problem.

Steps to reproduce

  1. On Linux, with mise 2026.10.1: mise use -g npm:@openai/codex@latest while an older version is installed and active (or wait for a new release).
  2. Confirm mise outdated lists npm:@openai/codex and mise upgrade codex --dry-run prints All tools are up to date.
  3. Run T3 Code as a systemd user service whose PATH starts with ~/.local/share/mise/shims.
  4. In Settings → Providers → Codex, click Update.
  5. The update reports success, but the version doesn't change and Codex is still shown as outdated.

Version

Server (systemd user service): first hit on 0.1.9-nightly.20261110.4491, then reproduced on 0.1.10-nightly.20261111.4529 and 0.1.10-nightly.20261113.4656. Client: T3 Code Desktop 0.1.10-nightly.20261111.4529 on macOS, connected to the remote server.

Environment

Ubuntu, kernel 6.8.0, x64. mise 2026.10.1. Codex CLI 0.160.0 → 0.167.2 via the mise npm backend. Global mise config: node = "24", "npm:@openai/codex" = "latest". mise minimum_release_age is 24h.

Evidence

Provider status cache before the manual fix: `version 0.160.0`, `versionAdvisory.status behind_latest`, `latestVersion 0.167.2`, `updateCommand "mise upgrade codex"`, `canUpdate true`.

Server trace: three `ProviderMaintenanceRunner.updateProvider` runs for Codex (one each on 4491, 4529 and 4656), each about 2.1 s and exiting `Success`. That's too short for an npm install, so mise exited without upgrading anything.


$ mise outdated
npm:@openai/codex  latest  0.160.0  0.167.2 ~/.config/mise/config.toml
$ mise upgrade codex --dry-run
mise All tools are up to date
$ mise upgrade npm:@openai/codex --dry-run
Would install npm:@openai/[email protected]

Related issues

#21524 (added mise-based provider updates; this bug came in with it). #10050 (mise shims made provider updates target mise itself; fixed).

Fix applied or workaround

mise upgrade npm:@openai/codex on the server, after which T3 reports Codex as current.

Filed by

Triaged with Claude Code (Claude Opus 5.5) via the T3 Code triage playbook.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    via-triageFiled through npx t3 triage

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions