From ae2cf776403d2c549e2f05ba05f29e43fe302f76 Mon Sep 17 00:00:00 2001 From: "Brent D. Williams" Date: Mon, 18 May 2026 09:46:48 -0700 Subject: [PATCH] fix: don't treat 429 as success in sendToRelay MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A 429 from the relay means the report was rate-limited and not accepted. Returning true silently dropped crash reports under sustained rate limiting, giving callers false confidence that reporting succeeded. Return false on 429 so callers can decide whether to retry. Honors the never-throws contract — no blocking retry logic added. --- lib/reporter.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/reporter.js b/lib/reporter.js index 2056a8d..8638a20 100644 --- a/lib/reporter.js +++ b/lib/reporter.js @@ -492,7 +492,7 @@ export async function sendToRelay(payload) { headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(payload), }); - return resp.ok || resp.status === 429; // rate-limited is fine, not an error + return resp.ok; // 429 returns false — rate-limited reports are not accepted, let callers decide whether to retry } catch { return false; }