From 03770d1a76dba0a62d8dca904ed7056cac8bf439 Mon Sep 17 00:00:00 2001 From: Mathieu Date: Wed, 24 Jun 2026 20:40:50 +0200 Subject: [PATCH] fix: propagate Shopify 404 through upload route so client retry triggers correctly Co-Authored-By: Claude Sonnet 4.6 --- src/app/api/images/upload/route.ts | 3 ++- src/lib/shopify.ts | 6 ++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/app/api/images/upload/route.ts b/src/app/api/images/upload/route.ts index 02687b4..908996e 100644 --- a/src/app/api/images/upload/route.ts +++ b/src/app/api/images/upload/route.ts @@ -26,6 +26,7 @@ export async function POST(req: NextRequest) { return NextResponse.json(result) } catch (err) { const message = err instanceof Error ? err.message : 'Erreur inconnue' - return NextResponse.json({ error: message }, { status: 500 }) + const status = (err as { status?: number }).status === 404 ? 404 : 500 + return NextResponse.json({ error: message }, { status }) } } diff --git a/src/lib/shopify.ts b/src/lib/shopify.ts index 3e6cc5e..ff1b58e 100644 --- a/src/lib/shopify.ts +++ b/src/lib/shopify.ts @@ -161,6 +161,12 @@ export async function uploadProductImage( continue } + if (res.status === 404) { + const err = new Error(`Shopify upload error: 404 — product not found`) as Error & { status: number } + err.status = 404 + throw err + } + if (!res.ok) { const body = await res.text() throw new Error(`Shopify upload error: ${res.status} — ${body}`)