fix: add sanitizeMessagesForProvider to anthropic handler (was using raw cast)

This commit is contained in:
Hannes Rudolph 2026-02-13 08:36:10 -07:00
parent aa3d734284
commit f656fb1709

View file

@ -1,5 +1,5 @@
import { createAnthropic } from "@ai-sdk/anthropic"
import { streamText, generateText, ToolSet, ModelMessage } from "ai"
import { streamText, generateText, ToolSet } from "ai"
import {
type ModelInfo,
@ -24,6 +24,7 @@ import {
yieldResponseMessage,
} from "../transform/ai-sdk"
import { applyToolCacheOptions, applySystemPromptCaching } from "../transform/cache-breakpoints"
import { sanitizeMessagesForProvider } from "../transform/sanitize-messages"
import { calculateApiCostAnthropic } from "../../shared/cost"
import { DEFAULT_HEADERS } from "./constants"
@ -76,8 +77,8 @@ export class AnthropicHandler extends BaseProvider implements SingleCompletionHa
): ApiStream {
const modelConfig = this.getModel()
// Convert messages to AI SDK format
const aiSdkMessages = messages as ModelMessage[]
// Sanitize messages for the provider API (allowlist: role, content, providerOptions).
const aiSdkMessages = sanitizeMessagesForProvider(messages)
// Convert tools to AI SDK format
const openAiTools = this.convertToolsForOpenAI(metadata?.tools)