fix(settings): default reasoning effort from model definition

Models with supportsReasoningEffort as an array (e.g., gpt-5.2) and no
requiredReasoningEffort would show a blank dropdown because the default
fell to 'disable' which wasn't in the available options. Now uses the
model's declared reasoningEffort as the default.
This commit is contained in:
Hannes Rudolph 2026-02-06 18:20:46 -07:00
parent b331a1405e
commit b7278aece7

View file

@ -103,7 +103,7 @@ export const ThinkingBudget = ({ apiConfiguration, setApiConfigurationField, mod
const modelDefaultReasoningEffort = modelInfo?.reasoningEffort as ReasoningEffortWithMinimal | undefined
const defaultReasoningEffort: ReasoningEffortOption = modelInfo?.requiredReasoningEffort
? modelDefaultReasoningEffort || "medium"
: "disable"
: modelDefaultReasoningEffort || "disable"
// Current reasoning effort from settings, or fall back to default
const storedReasoningEffort = apiConfiguration.reasoningEffort as ReasoningEffortOption | undefined
const currentReasoningEffort: ReasoningEffortOption = storedReasoningEffort || defaultReasoningEffort
@ -112,7 +112,7 @@ export const ThinkingBudget = ({ apiConfiguration, setApiConfigurationField, mod
useEffect(() => {
if (isReasoningEffortSupported && !apiConfiguration.reasoningEffort) {
// Only set a default if reasoning is required, otherwise leave as undefined (which maps to "disable")
if (modelInfo?.requiredReasoningEffort && defaultReasoningEffort !== "disable") {
if (defaultReasoningEffort !== "disable") {
setApiConfigurationField("reasoningEffort", defaultReasoningEffort as ReasoningEffortWithMinimal, false)
}
}