Skip to content

fix: 'max' effort no longer 400s on pre-5.6 Codex Responses models (#68365 verified live) - #90441

Merged
teknium1 merged 2 commits into
mainfrom
fix/codex-per-model-effort-vocab
Aug 20, 2026
Merged

fix: 'max' effort no longer 400s on pre-5.6 Codex Responses models (#68365 verified live)#90441
teknium1 merged 2 commits into
mainfrom
fix/codex-per-model-effort-vocab

Conversation

@teknium1

Copy link
Copy Markdown
Contributor

Summary

reasoning_effort: max no longer 400s on pre-5.6 OpenAI Responses models — the Codex wire vocabulary is now per-model, verified by live probes (#68365's premise confirmed).

Live results against api.openai.com/v1/responses (Aug 2026):

Model Accepts Rejects
gpt-5.6 none, low, medium, high, xhigh, max minimal, ultra
gpt-5.5 none, low, medium, high, xhigh max ("Unsupported value"), minimal, ultra

So @joelbrilliant's #68365 was half right: max does 400 — but only on pre-5.6 models. Its blanket max → xhigh clamp would have capped gpt-5.6, the one model that supports max. The declared-vocabulary architecture (#90350) absorbs the truth as data instead.

Changes

  • agent/reasoning_effort.py: CODEX_GPT56_EFFORTS / CODEX_LEGACY_EFFORTS + codex_supported_efforts(model) (old CODEX_RESPONSES_EFFORTS kept as alias)
  • agent/transports/codex.py + agent/auxiliary_client.py: both Responses paths pick the per-model set; the shared clamp does the rest

Wire outcomes: ultra → max on gpt-5.6; ultra/max → xhigh on gpt-5.5/o5; minimal → low everywhere.

Validation

509 targeted tests green (reasoning-effort module, both transports, aux client). New test pins the per-model sets and the consequential clamps, quoting the live error strings.

Resolves #68365 (premise verified live; credit to @joelbrilliant for the report and observation).

Infographic

per-model effort ceilings

…longer 400s on 'max' (#68365 confirmed live)

Live probes against api.openai.com/v1/responses (Aug 2026):
- gpt-5.6: accepts none/low/medium/high/xhigh/max; rejects minimal, ultra
- gpt-5.5: accepts none/low/medium/high/xhigh; rejects max ('Unsupported
  value'), minimal, ultra

So #68365's premise was half right: 'max' does 400 — but only on pre-5.6
models; blanket-clamping max->xhigh on gpt-5.6 (its fix) would have capped
the one model that supports max. The declared-vocabulary design absorbs
this as data: codex_supported_efforts(model) picks CODEX_GPT56_EFFORTS or
CODEX_LEGACY_EFFORTS, and the shared clamp does the rest. Both the main
Codex transport and the auxiliary client's Responses path use it.

Wire outcomes: ultra -> max on gpt-5.6, ultra/max -> xhigh on gpt-5.5/o5,
minimal -> low everywhere.
@github-actions

github-actions Bot commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

૮ >ﻌ< ა ci review

ran on 1aaa3d4 — chore: retrigger CI (zero-job dispatch failure, auto-heal)

⚠️ Warnings

OSV vulnerability scan · View job

7 known vulnerabilities found in pinned dependencies.

How to fix:

Review the findings in the Security tab. Update the affected dependencies if a patched version is available.


debug info

CI timings

CI timings · View report · View job

Wall time 8m1s vs 10m46s (-25.5%). 8 job(s) slower, 14 faster, 2 unchanged.

  • Detect affected areas: -180.0s
  • Python tests / Run tests slice 11/12: +139.0s
  • Python tests / Run tests slice 5/12: +100.0s
  • Python tests / Run tests slice 2/12: -78.0s
  • Check no committed infographics / check-no-committed-infographics: -65.0s

@alt-glitch alt-glitch added type/bug Something isn't working comp/agent Core agent runtime: loop, agent_init, prompt builder, context-compression, responses endpoint provider/openai OpenAI / Codex Responses API P2 Medium — degraded but workaround exists labels Aug 20, 2026
@teknium1
teknium1 merged commit d057388 into main Aug 20, 2026
50 checks passed
@teknium1
teknium1 deleted the fix/codex-per-model-effort-vocab branch August 20, 2026 05:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/agent Core agent runtime: loop, agent_init, prompt builder, context-compression, responses endpoint P2 Medium — degraded but workaround exists provider/openai OpenAI / Codex Responses API type/bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants