1f5d7702ff
- Move DelegatedModelConfig to src/shared/model-resolution-types.ts - Re-export from delegate-task/types.ts (preserving import paths) - Replace background-agent/types.ts local duplicate with shared import - Consolidate model-settings-compatibility.ts registry patterns
42 lines
881 B
TypeScript
42 lines
881 B
TypeScript
import type { FallbackEntry } from "./model-requirements"
|
|
|
|
export interface DelegatedModelConfig {
|
|
providerID: string
|
|
modelID: string
|
|
variant?: string
|
|
reasoningEffort?: string
|
|
temperature?: number
|
|
top_p?: number
|
|
maxTokens?: number
|
|
thinking?: { type: "enabled" | "disabled"; budgetTokens?: number }
|
|
}
|
|
|
|
export type ModelResolutionRequest = {
|
|
intent?: {
|
|
uiSelectedModel?: string
|
|
userModel?: string
|
|
categoryDefaultModel?: string
|
|
}
|
|
constraints: {
|
|
availableModels: Set<string>
|
|
}
|
|
policy?: {
|
|
fallbackChain?: FallbackEntry[]
|
|
systemDefaultModel?: string
|
|
}
|
|
}
|
|
|
|
export type ModelResolutionProvenance =
|
|
| "override"
|
|
| "category-default"
|
|
| "provider-fallback"
|
|
| "system-default"
|
|
|
|
export type ModelResolutionResult = {
|
|
model: string
|
|
provenance: ModelResolutionProvenance
|
|
variant?: string
|
|
attempted?: string[]
|
|
reason?: string
|
|
}
|