From d15c35e437c67e9ba520fcd5e765fce666a0d3d2 Mon Sep 17 00:00:00 2001 From: sujal mainali Date: Sat, 4 Apr 2026 10:07:06 +0545 Subject: [PATCH] fix(ai): skip generating download requests for data URLs This fixes an issue introduced in \`@ai-sdk/provider-utils@4.0.19\` where stricter SSRF URL validation caused \`data:\` URLs to be rejected during the \`downloadAssets\` phase, since \`validateDownloadUrl\` only allows \`http:\` and \`https:\`. Since \`data:\` URLs are inline payloads and don't need actually downloading, they should be filtered out from the \`plannedDownloads\` array altogether. Fixes #13103 --- packages/ai/src/prompt/convert-to-language-model-prompt.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/ai/src/prompt/convert-to-language-model-prompt.ts b/packages/ai/src/prompt/convert-to-language-model-prompt.ts index 2ba5713c53a0..dd2d67dc317d 100644 --- a/packages/ai/src/prompt/convert-to-language-model-prompt.ts +++ b/packages/ai/src/prompt/convert-to-language-model-prompt.ts @@ -420,7 +420,7 @@ async function downloadAssets( .filter( (part): part is { mediaType: string | undefined; data: URL } => - part.data instanceof URL, + part.data instanceof URL && part.data.protocol !== 'data:', ) .map(part => ({ url: part.data,