Skip to content

fix(codex): pin the Codex model explicitly (--ignore-user-config discards it) - #9

Merged
rschumann merged 1 commit into
mainfrom
fix/codex-model-pin
Aug 9, 2026
Merged

fix(codex): pin the Codex model explicitly (--ignore-user-config discards it)#9
rschumann merged 1 commit into
mainfrom
fix/codex-model-pin

Conversation

@rschumann

Copy link
Copy Markdown
Contributor

What this is

This change has been running on the deployed machine since 2026-08-07, committed to no branch. I found it as an uncommitted modification in ~/.lope while cutting v0.16.0, and preserved it through the release resync. Committing it so the next git reset --hard doesn't erase it.

The bug it fixes

CodexValidator passes --ignore-user-config, which discards ~/.codex/config.toml. The user's configured default model therefore never reached lope, and codex validated with whatever the CLI's built-in default was. This pins the model explicitly, overridable via LOPE_CODEX_MODEL.

Reasoning effort stays low deliberately — these are fast pass/fail gates, and xhigh would make every validation slow and expensive.

Why it is NOT in v0.16.0

Deliberately held back. It hardcodes a default model slug (gpt-5.6-sol) into a package published to PyPI. If that slug is not available to a given user, their codex validation breaks — and unlike the local machine, they would have no idea why. The env override softens it but does not remove the risk.

Decision for the maintainer: either merge as-is (accepting the default), or change the default to fall back to the CLI's own default when LOPE_CODEX_MODEL is unset, which fixes the config-discarding bug without imposing a slug on everyone.

Not urgent — the behaviour is already live locally either way.

🤖 Generated with Claude Code

…scards it

CodexValidator passes --ignore-user-config, which throws away
~/.codex/config.toml — so the user's configured default model never reached
lope and codex validated with whatever the CLI's built-in default happened to
be. Pin it explicitly instead, overridable with LOPE_CODEX_MODEL.

Reasoning effort stays "low" on purpose: these are fast pass/fail gates, and
xhigh would make every validation slow and expensive. For a heavyweight
opinion, call `codex exec` directly — it reads the user config.

This change was written 2026-08-07 and has been running locally in the
deployed checkout ever since, committed to no branch. Committing it so it
survives the next release resync.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@rschumann
rschumann merged commit ad51263 into main Aug 9, 2026
4 checks passed
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.

1 participant