From 670ca84ae922bfd7478d1ef71f85216550784e94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gerg=C5=91=20M=C3=B3ricz?= Date: Sun, 16 Mar 2025 19:57:08 +0100 Subject: [PATCH] fix(v1/checkCredits): snap crawl limit to remaining credits if over without erroring out (#1350) --- apps/api/src/routes/v1.ts | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/apps/api/src/routes/v1.ts b/apps/api/src/routes/v1.ts index 4fee4a1e..f6a46381 100644 --- a/apps/api/src/routes/v1.ts +++ b/apps/api/src/routes/v1.ts @@ -52,7 +52,18 @@ function checkCreditsMiddleware( if (chunk) { req.acuc = chunk; } + req.account = { remainingCredits }; if (!success) { + if (!minimum && req.body && (req.body as any).limit !== undefined && remainingCredits > 0) { + logger.warn("Adjusting limit to remaining credits", { + teamId: req.auth.team_id, + remainingCredits, + request: req.body, + }); + (req.body as any).limit = remainingCredits; + return next(); + } + const currencyName = req.acuc.is_extract ? "tokens" : "credits" logger.error( `Insufficient ${currencyName}: ${JSON.stringify({ team_id: req.auth.team_id, minimum, remainingCredits })}`, @@ -72,7 +83,6 @@ function checkCreditsMiddleware( }); } } - req.account = { remainingCredits }; next(); })().catch((err) => next(err)); };