fix(providers): scope codex effort defaults and options to per-model capability#133
Merged
Merged
Conversation
…capability GPT-5.6's per-model reasoning-effort scale (Sol/Terra up to ultra, Luna up to max, GPT-5.5 up to xhigh) wasn't reflected anywhere: the default effort fallback ignored Codex's own recommendation, and every effort picker (preset editor, chat input cycle, settings default, providers-section help) offered the full scale regardless of the selected model. Also fixes the preset-edit popover closing itself immediately via Radix's default focus-return, and merges the App Server's model/list catalog with the static GPT-5.6 catalog so newer models are always selectable even on older installed Codex binaries. - Add dynamic + static per-model supported/default reasoning-effort registries in model-catalog.ts, sourced from the verified codex-cli 0.144.1 catalog - Scope all Codex effort selectors and cycle order to the active model, clamping to the nearest supported value on model switch - Add missing max/ultra entries to the providers-section reasoning help list - Fix PresetBar edit popover auto-closing via onCloseAutoFocus
astykyj
approved these changes
Jul 10, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
ultra, Luna up tomax, GPT-5.5 up toxhigh) wasn't reflected anywhere in the UI or default-resolution logic; effort pickers offered the full scale regardless of the selected model.model/list) + static per-model effort registry so:mediumonly when unknownmax/ultraentries to the providers-section reasoning help list (previously stopped atxhigh)model/listcatalog with the static GPT-5.6 catalog so newer models stay selectable even against an older installed Codex binaryPresetBarclosing itself immediately due to Radix's default focus-return stealing focus from the freshly opened editorKey changes
src/lib/providers/model-catalog.ts:supportedCodexReasoningEffortscapability field, dynamic default/supported-effort registries,listCodexReasoningEffortsForModel,clampCodexEffortToModelsrc/lib/providers/use-codex-model-catalog.ts: registers dynamic default/supported efforts from the live catalog fetch; merges dynamic + static model listssrc/lib/providers/runtime-option-contract.ts:listCodexEffortOptionsForModelhelpersrc/lib/task-presets.ts,src/components/layout/task-preset-editor.tsx: model-scoped effort options in the preset editorsrc/components/session/chat-input.runtime.ts,ChatInput.tsx: model-scoped effort cycling + clamp on model switchsrc/components/layout/settings-dialog-sections.tsx,settings-dialog-providers-section.tsx: model-scoped default-effort selector; addedmax/ultrato the reasoning help listsrc/components/layout/PresetBar.tsx:onCloseAutoFocusfix for the edit popoversrc/store/app.store.ts: defaultcodexReasoningEffortupdated toxhigh(verified server default for the default model)Test plan
bun run typecheckmodel-catalog,codex-model-catalog-merge(new),codex-runtime-options,task-presets,provider-runtime-options,ipc-schemas,chat-input.runtime,model-selector-utils,model-shortcuts,provider-mode-presets— 107 pass / 0 fail