From a0c70c4f5a7e4e4512b0e5b3f5d70a08045f3efd Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Sat, 25 Apr 2026 11:17:17 +0100 Subject: [PATCH] fix(google): guard veo rest polling --- .../google/video-generation-provider.ts | 25 ++++++++++++------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/extensions/google/video-generation-provider.ts b/extensions/google/video-generation-provider.ts index 20450170777..b4c6fd104bc 100644 --- a/extensions/google/video-generation-provider.ts +++ b/extensions/google/video-generation-provider.ts @@ -289,18 +289,25 @@ async function requestGoogleVideoJson(params: { }), ); try { - const response = await fetch(params.url, { - method: params.method, - headers: params.headers, - ...(params.body === undefined ? {} : { body: JSON.stringify(params.body) }), + const { response, release } = await fetchWithSsrFGuard({ + url: params.url, + init: { + method: params.method, + headers: params.headers, + ...(params.body === undefined ? {} : { body: JSON.stringify(params.body) }), + }, signal: controller.signal, }); - const text = await response.text(); - const payload = text ? (JSON.parse(text) as unknown) : {}; - if (!response.ok) { - throw new Error(typeof payload === "string" ? payload : JSON.stringify(payload ?? null)); + try { + const text = await response.text(); + const payload = text ? (JSON.parse(text) as unknown) : {}; + if (!response.ok) { + throw new Error(typeof payload === "string" ? payload : JSON.stringify(payload ?? null)); + } + return payload; + } finally { + await release(); } - return payload; } finally { clearTimeout(timeout); }