openai / openai/codex

CDXB-44184: Desktop restores invalid Astra reasoning effort

Open
#44,184 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

app bug config
Dominant language
Rust
Stars
125k
Forks
19.4k
PR merge metrics
PR metrics pending

Description

Discovery date: 2026-09-09
Detected in version: unknown
Reported by: Codex (self-discovered while investigating a user report)
Severity: high
Environment: Codex Desktop on macOS; long-lived local collaborative task using gpt-6-astra
Scope / affected surface: Desktop task continuation and per-thread collaboration settings
Evidence: Local rollout trace consistently shows gpt-6-astra with reasoning_effort: "none" injected into new turns, followed by API 400 unsupported_value; an explicit low override succeeds only for the immediately dispatched turn.

Summary

Codex Desktop can resurrect a stale per-thread collaboration snapshot with gpt-6-astra / none when creating a continuation or user-message turn. Astra does not accept none, so the task fails before the agent can respond. This occurs even after the same task was explicitly resumed with gpt-6-astra / low.

Expected behavior

Astra task turns should use a supported reasoning effort. An explicit per-turn override to low should persist to later continuation and user-message turns, or the app should validate and migrate an incompatible stored setting before calling the model.

Current behavior

After a successful turn using the explicit low override, the desktop app creates a subsequent turn with its older none snapshot. The request fails immediately with HTTP 400, and the task cannot process the user message that asked to correct the value.

Reproduction steps

  1. Open a long-lived Codex Desktop task with collaboration mode configured for gpt-6-astra.
  2. Resume the task through the supported API/UI path with reasoning_effort: low; the dispatched turn runs successfully.
  3. Allow the goal engine to create a continuation turn, or send a new user message in the same task.
  4. Observe the new turn context contain model: gpt-6-astra and reasoning_effort: none.
  5. Observe the model request fail with Unsupported value: 'none' is not supported with the 'gpt-6-astra' model.

Environment details

  • Platform: macOS, Codex Desktop
  • Model: gpt-6-astra
  • Valid supported efforts reported by the API: low, medium, high, xhigh, max
  • The global config has no literal none setting and no project/profile override was found.
  • The failure has been reproduced on a goal-driven continuation and on a direct user-message turn.
  • The local thread record is reset to none immediately before the failed turn.

Notes

  • Editing local SQLite state is not a safe workaround; the desktop control plane reapplies the stale snapshot.
  • The desired durable behavior is task-level persistence of the supported low effort.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing Desktop task continuation and direct user-message turn creation, then inspect where the local thread record and collaboration snapshot are restored or reset. Reproduce the Astra task with an explicit low override and verify that later turns retain a supported effort instead of none and no longer receive the API 400.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.