db056346d2
Move parseModelString into src/shared so callers can depend on a neutral module instead of reaching into delegate-task internals. Cross-tool coupling violates module boundaries, and this keeps call-omo-agent plus runtime-fallback from importing through a sibling tool.
31 lines
885 B
TypeScript
31 lines
885 B
TypeScript
import { parseModelString } from "../../shared/model-string-parser"
|
|
|
|
export function buildRetryModelPayload(
|
|
model: string,
|
|
agentSettings?: { variant?: string; reasoningEffort?: string },
|
|
): { model: { providerID: string; modelID: string }; variant?: string; reasoningEffort?: string } | undefined {
|
|
const parsedModel = parseModelString(model)
|
|
if (!parsedModel) {
|
|
return undefined
|
|
}
|
|
|
|
const variant = parsedModel.variant ?? agentSettings?.variant
|
|
const reasoningEffort = agentSettings?.reasoningEffort
|
|
|
|
const payload: { model: { providerID: string; modelID: string }; variant?: string; reasoningEffort?: string } = {
|
|
model: {
|
|
providerID: parsedModel.providerID,
|
|
modelID: parsedModel.modelID,
|
|
},
|
|
}
|
|
|
|
if (variant) {
|
|
payload.variant = variant
|
|
}
|
|
if (reasoningEffort) {
|
|
payload.reasoningEffort = reasoningEffort
|
|
}
|
|
|
|
return payload
|
|
}
|