Skip to content

Codex: run again on ChatGPT's chat-tier model when its own default is refused - #671

Merged
renkelvin merged 1 commit into
mainfrom
claude/alpha-codex-model-400-sc6ch4
Oct 18, 2026
Merged

renkelvin merged 1 commit into
mainfrom
claude/alpha-codex-model-400-sc6ch4

Conversation

@renkelvin

@renkelvin renkelvin commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

Requested by Kelvin · project thread

Before: when Codex's own default model is one the person's ChatGPT plan does not include, every Fox turn and Applet analysis fails with HTTP 400 "The '…' model is not supported when using Codex with a ChatGPT account." Alpha 4511 failed this way on both release hosts (#668 Mac gpt-6.1-sol, #669 Windows gpt-6-astra).

After: the refused turn runs again at once on the ChatGPT provider's chat-tier model (gpt-5.6-terra, model-providers.ts), and later turns of that Agent name it directly until Worldlet quits.

How: modelRefusedByAccount (core/agent/local-harness.ts) recognizes Codex's refusal. LocalHarnessRuntime throws ModelRefused only for a turn on the Agent's own default (no model chosen by Worldlet) that has not started answering (or background work), and execute retries it once with the fallback, remembered per Agent command. A model Worldlet chose itself is never swapped, and Codex's own settings are not changed. scripts/local-harness-check.ts covers refusal → fallback, later turns, and the chosen-model case.

Refs #668 #669 (they close themselves when Alpha passes again).

🤖 Generated with Claude Code

https://claude.ai/code/session_01JgCmGrXxqQmpby7JvzvsZa

… refused

Alpha 4511 failed on both release hosts (#668 test:onboarding, #669
test:agent:local): Codex's own default model ('gpt-6.1-sol' on the Mac,
'gpt-6-astra' on Windows) was refused with HTTP 400 "not supported when
using Codex with a ChatGPT account". Any person whose ChatGPT plan lacks
Codex's default would see every Fox turn and Applet analysis fail.

A turn on the Agent's own default that the provider refuses for the
account now runs again at once on the ChatGPT provider's chat-tier model
(model-providers.ts), and later turns name that model directly until
Worldlet quits. A model Worldlet chose itself is never swapped, and the
Agent's own settings are not changed.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgCmGrXxqQmpby7JvzvsZa
@renkelvin renkelvin self-assigned this Oct 18, 2026
@renkelvin
renkelvin enabled auto-merge (squash) October 18, 2026 19:06
@renkelvin
renkelvin merged commit efd01b6 into main Oct 18, 2026
5 checks passed
@renkelvin
renkelvin deleted the claude/alpha-codex-model-400-sc6ch4 branch October 18, 2026 19:09
renkelvin added a commit that referenced this pull request Oct 18, 2026
…s refused (#672)

<!-- claude-projects-attribution: {"github_login":"renkelvin"} -->
_Requested by **Kelvin** · [project
thread](https://claude.ai/code/project/chan_01PPP3swyRapkX28rrRHd78p?thread=cmsg_01PPP3swyRapkX28rrRHd78pNAWoPKWHiEX5WzwgcAUPSD)_

Before: when the ChatGPT account refused Codex's own default model, #671
ran the turn on the chat-tier model `gpt-5.6-terra`. On the Mac release
host, onboarding's background work then failed the World's item rules:
an Attention reason over 8 words in Alpha 4512, and an Attention center
pass with incomplete coverage in 4513 (#668). The link to the weaker
model is inferred from the timing; the Mac library was not read.

After: a refused default is replaced by the ChatGPT top tier
(`gpt-6-sol`), the same class of model as Codex's own default. Only when
the account refuses that too does the turn drop to the chat tier.

How: `ModelRefused` carries the refused model, and `nextFallback` steps
along `REFUSED_DEFAULT_TIERS` (L, then M). The model in place is
remembered per Agent command and only moves forward. A model the person
or the thread chose is never swapped. `scripts/local-harness-check.ts`
covers default → top tier, default → top tier → chat tier, later turns,
and the chosen-model case.

Refs #668.

---
_Generated by [Claude
Code](https://claude.ai/code/session_01JgCmGrXxqQmpby7JvzvsZa)_

Co-authored-by: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants