Merge pull request #3744 from Arcadi4/dev

Allow "max" option for "reasoningEffort" field in config schema
This commit is contained in:
YeonGyu-Kim
2026-05-06 17:14:57 +09:00
committed by GitHub
6 changed files with 99 additions and 54 deletions
+90 -45
View File
@@ -130,7 +130,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -196,7 +197,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -399,7 +401,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"textVerbosity": {
@@ -480,7 +483,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -546,7 +550,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -749,7 +754,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"textVerbosity": {
@@ -830,7 +836,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -896,7 +903,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -1099,7 +1107,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"textVerbosity": {
@@ -1180,7 +1189,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -1246,7 +1256,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -1449,7 +1460,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"textVerbosity": {
@@ -1533,7 +1545,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -1599,7 +1612,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -1802,7 +1816,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"textVerbosity": {
@@ -1883,7 +1898,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -1949,7 +1965,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -2152,7 +2169,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"textVerbosity": {
@@ -2233,7 +2251,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -2299,7 +2318,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -2502,7 +2522,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"textVerbosity": {
@@ -2583,7 +2604,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -2649,7 +2671,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -2852,7 +2875,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"textVerbosity": {
@@ -2933,7 +2957,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -2999,7 +3024,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -3202,7 +3228,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"textVerbosity": {
@@ -3283,7 +3310,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -3349,7 +3377,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -3552,7 +3581,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"textVerbosity": {
@@ -3633,7 +3663,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -3699,7 +3730,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -3902,7 +3934,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"textVerbosity": {
@@ -3983,7 +4016,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -4049,7 +4083,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -4252,7 +4287,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"textVerbosity": {
@@ -4333,7 +4369,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -4399,7 +4436,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -4602,7 +4640,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"textVerbosity": {
@@ -4683,7 +4722,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -4749,7 +4789,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -4952,7 +4993,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"textVerbosity": {
@@ -5044,7 +5086,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -5110,7 +5153,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"temperature": {
@@ -5199,7 +5243,8 @@
"low",
"medium",
"high",
"xhigh"
"xhigh",
"max"
]
},
"textVerbosity": {
+1 -1
View File
@@ -35,7 +35,7 @@ export const AgentOverrideConfigSchema = z.object({
})
.optional(),
/** Reasoning effort level (OpenAI). Overrides category and default settings. */
reasoningEffort: z.enum(["none", "minimal", "low", "medium", "high", "xhigh"]).optional(),
reasoningEffort: z.enum(["none", "minimal", "low", "medium", "high", "xhigh", "max"]).optional(),
/** Text verbosity level. */
textVerbosity: z.enum(["low", "medium", "high"]).optional(),
/** Provider-specific options. Passed directly to OpenCode SDK. */
+1 -1
View File
@@ -16,7 +16,7 @@ export const CategoryConfigSchema = z.object({
budgetTokens: z.number().optional(),
})
.optional(),
reasoningEffort: z.enum(["none", "minimal", "low", "medium", "high", "xhigh"]).optional(),
reasoningEffort: z.enum(["none", "minimal", "low", "medium", "high", "xhigh", "max"]).optional(),
textVerbosity: z.enum(["low", "medium", "high"]).optional(),
tools: z.record(z.string(), z.boolean()).optional(),
prompt_append: z.string().optional(),
+1 -1
View File
@@ -3,7 +3,7 @@ import { z } from "zod"
export const FallbackModelObjectSchema = z.object({
model: z.string(),
variant: z.string().optional(),
reasoningEffort: z.enum(["none", "minimal", "low", "medium", "high", "xhigh"]).optional(),
reasoningEffort: z.enum(["none", "minimal", "low", "medium", "high", "xhigh", "max"]).optional(),
temperature: z.number().min(0).max(2).optional(),
top_p: z.number().min(0).max(1).optional(),
maxTokens: z.number().optional(),
+1 -1
View File
@@ -32,7 +32,7 @@ export const HEURISTIC_MODEL_FAMILY_REGISTRY: ReadonlyArray<HeuristicModelFamily
family: "gpt-5",
includes: ["gpt-5"],
variants: ["low", "medium", "high", "xhigh"],
reasoningEfforts: ["none", "minimal", "low", "medium", "high", "xhigh"],
reasoningEfforts: ["none", "minimal", "low", "medium", "high", "xhigh", "max"],
},
{
family: "gpt-legacy",
+5 -5
View File
@@ -32,10 +32,10 @@ export type ModelSettingsCompatibilityChange = {
from: string
to?: string
reason:
| "unsupported-by-model-family"
| "unknown-model-family"
| "unsupported-by-model-metadata"
| "max-output-limit"
| "unsupported-by-model-family"
| "unknown-model-family"
| "unsupported-by-model-metadata"
| "max-output-limit"
}
export type ModelSettingsCompatibilityResult = {
@@ -49,7 +49,7 @@ export type ModelSettingsCompatibilityResult = {
}
const VARIANT_LADDER = ["low", "medium", "high", "xhigh", "max"]
const REASONING_LADDER = ["none", "minimal", "low", "medium", "high", "xhigh"]
const REASONING_LADDER = ["none", "minimal", "low", "medium", "high", "xhigh", "max"]
function downgradeWithinLadder(value: string, allowed: string[], ladder: string[]): string | undefined {
const requestedIndex = ladder.indexOf(value)