fix: legacy Codex model miss no longer suggests invalid config#100161
fix: legacy Codex model miss no longer suggests invalid config#100161zhangguiping-xydt wants to merge 2 commits into
Conversation
|
Codex review: needs maintainer review before merge. Reviewed July 5, 2026, 1:58 AM ET / 05:58 UTC. Summary PR surface: Source +5, Tests +21. Total +26 across 2 files. Reproducibility: yes. at source level: current main still emits the generic Review metrics: 1 noteworthy metric.
Stored data model Root-cause cluster Members:
Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything. Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Risk before merge
Maintainer options:
Next step before merge
Security Review detailsBest possible solution: Land one canonical narrow hint fix that keeps Do we have a high-confidence way to reproduce the issue? Yes, at source level: current main still emits the generic Is this the best way to solve the issue? Yes, this is the right narrow owner boundary: the shared missing-model hint helper owns the bad recovery text, and the PR avoids reviving AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against 913311845ebd. Label changesLabel changes:
Label justifications:
Evidence reviewedPR surface: Source +5, Tests +21. Total +26 across 2 files. View PR surface stats
Acceptance criteria:
What I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
Review history (4 earlier review cycles)
|
|
Thanks @zhangguiping-xydt. The real CLI proof and focused regression made this a credible candidate. We landed #100120 as the canonical fix for the same If there is a concrete case covered here but not by the merged branch, call out the exact difference and we can reopen. |
Closes #100066
What Problem This Solves
Fixes an issue where operators who referenced a legacy
openai-codex/*model inagents.defaults.modelscould receive anUnknown modelrecovery hint that told them to addmodels.providers["openai-codex"].models[]. Following that hint can produce a startup validation failure becauseopenai-codexis a legacy provider id and current config validation rejects that provider overlay withoutbaseUrl.Why This Change Was Made
The recovery hint now treats
openai-codexas a legacy Codex route instead of a custom provider registration target. It points operators atopenclaw doctor --fix,openclaw models status, and OpenAI/Codex OAuth re-authentication instead of suggesting amodels.providers["openai-codex"]edit. This intentionally does not expand the config schema or makeopenai-codexa new valid provider overlay.User Impact
Operators no longer get guidance that can turn an unknown-model runtime error into a gateway startup crash-loop. The suggested recovery path now matches the existing legacy migration and auth/status workflows.
Evidence
Real OpenClaw CLI proof with isolated home/state and a valid config containing
agents.defaults.models["openai-codex/gpt-5.4"] = {}but nomodels.providers["openai-codex"]overlay:Red/green source-level repro:
agents.defaults.models["openai-codex/gpt-5.4"]with no provider model row. Before the fix, the test failed because the error still said to addmodels.providers["openai-codex"].models[].Validator contract unchanged: