fix(delegate-task): apply category config temperature/maxTokens/top_p to categoryModel (fixes #2831)

This commit is contained in:
MoerAI
2026-03-27 10:01:23 +09:00
parent 1c9f4148d0
commit 944cf429a7
+13 -2
View File
@@ -12,8 +12,19 @@ import { buildFallbackChainFromModels, findMostSpecificFallbackEntry } from "../
import { getAvailableModelsForDelegateTask } from "./available-models"
import { resolveModelForDelegateTask } from "./model-selection"
import type { CategoryConfig } from "../../config/schema"
import type { DelegatedModelConfig } from "./types"
function applyCategoryParams(base: DelegatedModelConfig, config: CategoryConfig): DelegatedModelConfig {
const result = { ...base }
if (config.temperature !== undefined) result.temperature = config.temperature
if (config.top_p !== undefined) result.top_p = config.top_p
if (config.maxTokens !== undefined) result.maxTokens = config.maxTokens
if (config.reasoningEffort !== undefined) result.reasoningEffort = config.reasoningEffort
if (config.thinking !== undefined) result.thinking = config.thinking
return result
}
export interface CategoryResolutionResult {
agentToUse: string
categoryModel: DelegatedModelConfig | undefined
@@ -106,7 +117,7 @@ Available categories: ${allCategoryNames}`,
const parsedModel = parseModelString(actualModel)
const variantToUse = userCategories?.[args.category!]?.variant ?? resolved.config.variant
categoryModel = parsedModel
? (variantToUse ? { ...parsedModel, variant: variantToUse } : parsedModel)
? applyCategoryParams({ ...parsedModel, variant: variantToUse }, resolved.config)
: undefined
}
} else {
@@ -165,7 +176,7 @@ Available categories: ${allCategoryNames}`,
const parsedModel = parseModelString(actualModel)
const variantToUse = userCategories?.[args.category!]?.variant ?? resolvedVariant ?? resolved.config.variant
categoryModel = parsedModel
? (variantToUse ? { ...parsedModel, variant: variantToUse } : parsedModel)
? applyCategoryParams({ ...parsedModel, variant: variantToUse }, resolved.config)
: undefined
}
}