From 252d40d8978e9940de01c063ba86809b59bee77f Mon Sep 17 00:00:00 2001 From: Hureru <3507039083@qq.com> Date: Thu, 19 Mar 2026 00:48:12 +0800 Subject: [PATCH] fix(proxy): fix merge conflict syntax error in images.ts catch block --- src/server/routes/proxy/images.ts | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/server/routes/proxy/images.ts b/src/server/routes/proxy/images.ts index 7b42dad..dce19f6 100644 --- a/src/server/routes/proxy/images.ts +++ b/src/server/routes/proxy/images.ts @@ -109,7 +109,23 @@ export async function imagesProxyRoute(app: FastifyInstance) { return reply.code(upstream.status).send(data); } catch (err: any) { tokenRouter.recordFailure(selected.channel.id); - logProxy(selected, requestedModel, 'failed', 0, Date.now() - startTime, err.message, retryCount, logDownstreamApiKeyId ? downstreamApiKeyId : null);, async (request: FastifyRequest, reply: FastifyReply) => { + logProxy(selected, requestedModel, 'failed', 0, Date.now() - startTime, err.message, retryCount, logDownstreamApiKeyId ? downstreamApiKeyId : null); + if (retryCount < MAX_RETRIES) { + retryCount++; + continue; + } + await reportProxyAllFailed({ + model: requestedModel, + reason: err.message || 'network failure', + }); + return reply.code(502).send({ + error: { message: `Upstream error: ${err.message}`, type: 'upstream_error' }, + }); + } + } + }); + + app.post('/v1/images/edits', async (request: FastifyRequest, reply: FastifyReply) => { const multipartForm = await parseMultipartFormData(request); const jsonBody = (!multipartForm && request.body && typeof request.body === 'object') ? request.body as Record