Auto-approval review model codex-auto-review intermittently rejected by Responses-Lite (unsupported_value, param: model) - approvals fail closed
What version of the Codex App are you using?
Codex Desktop 26.715.10079.0 (Windows), embedded CLI/core reports client_version 0.145.0 in models_cache.json. Signed in with a ChatGPT account.
What platform is your computer?
Windows 11 Home 10.0.26200
What issue are you seeing?
The automatic approval review (Guardian) intermittently fails with:
{
"type": "error",
"error": {
"type": "invalid_request_error",
"code": "unsupported_value",
"message": "This model is not supported when using X-OpenAI-Internal-Codex-Responses-Lite.",
"param": "model"
},
"status": 400
}
When this happens the planned action (e.g. git commit, a read-only Invoke-WebRequest check, even codex doctor --help) is blocked fail-closed with:
This action was rejected due to unacceptable risk.
Reason: Automatic approval review failed: ...
This looks related to #31705 / #30422 (same error string) and #31607 (compaction), but the failing request here is not the user-selected model. Evidence from ~/.codex/logs_2.sqlite shows the failing turns are the dedicated reviewer model:
turn{... model=codex-auto-review codex.turn.reasoning_effort=low}:session_task.run:run_turn: Turn error: { ... "unsupported_value" ... "param": "model" }
The main session model (gpt-5.6-sol) never failed — every unsupported_value error in the log belongs to a model=codex-auto-review reviewer turn (or to the main turn quoting the reviewer failure). Two variants observed:
- Regular Guardian assessment sampling calls (majority of failures).
- The reviewer thread's remote compaction:
Automatic approval review failed: Error running remote compact task: { ... unsupported_value ... }— same shape as #31607 but on the Guardian thread.
Why this looks server-side
From the local SQLite logs (logs table), Guardian activity ran daily from 2026-07-14 to 2026-07-23, but errors cluster on exactly two days:
| date (UTC) | guardian unsupported_value errors |
|---|---|
| 2026-07-14 | 12 |
| 2026-07-15 … 07-22 | 0 (daily activity present) |
| 2026-07-23 | 58 |
On 2026-07-23, success and failure are interleaved hour by hour — e.g. hour 10 UTC had ~46 reviewer dispatches with only 10 failures, while hours 01/02/06/15 UTC had zero failures. Two different app processes (different process_uuid) were affected the same way, so it is not a stale client instance.
The client appears to be doing what the server metadata tells it to: in models_cache.json, codex-auto-review (display name GPT-5.6-Terra) is defined with "use_responses_lite": true, so the client sends the reviewer request over the Lite path — and some fraction of the backend then rejects that very slug for Lite. This looks like an inconsistency between the model metadata service and the Responses-Lite gateway allowlist (possibly only on part of the fleet / during rollouts).
Impact
- Benign, explicitly approved actions are blocked; the user must manually approve each one while the incident lasts.
- Manual approval does not stop recurrence, because every subsequent action spawns a new Guardian call.
- When the Guardian thread grows, the remote-compact variant adds token waste on top (cf. #31607).
What steps can reproduce the bug?
- Windows Codex Desktop, ChatGPT account, default auto-approval review enabled, any 5.6-family session model.
- Run a long agent session that triggers approval reviews repeatedly (e.g. repeated
git commit/ network verification commands). - During an affected window, a fraction of Guardian calls fail with the 400 above and the actions are rejected.
Local log query used to extract the evidence:
sqlite3 -readonly ~/.codex/logs_2.sqlite "SELECT datetime(ts,'unixepoch'), substr(feedback_log_body,1,300) FROM logs WHERE feedback_log_body LIKE '%unsupported_value%' AND feedback_log_body LIKE '%codex-auto-review%' ORDER BY ts DESC;"
Happy to provide fuller (redacted) log excerpts if useful.
2 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
Additional reproduction from Codex Desktop on macOS using a fresh task with the user-configured default stable model.
First attempt:
The read-only MCP call was
codegraph_explorewith queryload_report_schema. The rejection happened in the automatic approval layer; the request did not reach the CodeGraph MCP server.After fully restarting Codex Desktop, I created another fresh task using the default stable model and repeated the same single read-only MCP call. It still did not reach CodeGraph, but the reviewer failure changed to a timeout:
No files were modified, no fallback search was used, and the MCP call was not retried within either task. This appears consistent with an automatic-review path failure rather than a CodeGraph compatibility or repository-index failure.