From 098a67789e7caeca4ae49c8704cbaff323901f78 Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Fri, 12 Jun 2026 06:50:45 +0000 Subject: [PATCH] Refactor fetchActivity to use sequential pagination instead of concurrent promises Co-authored-by: is0692vs <135803462+is0692vs@users.noreply.github.com> --- src/lib/github.ts | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/src/lib/github.ts b/src/lib/github.ts index ed7dd37f..92fc171e 100644 --- a/src/lib/github.ts +++ b/src/lib/github.ts @@ -675,19 +675,12 @@ export const fetchActivity = cache(async function fetchActivity( const pages = [1, 2, 3]; const allEvents: GitHubEvent[] = []; - const promises = pages.map((page) => - restGet( - `/users/${encodeURIComponent(username)}/events/public?per_page=100&page=${page}`, - token - ) - ); - - // Suppress unhandled promise rejections for subsequent pages if we break early or throw - promises.forEach((p) => p.catch((e) => logger.error("Event fetch promise rejected:", e))); - - for (const p of promises) { + for (const page of pages) { try { - const events = await p; + const events = await restGet( + `/users/${encodeURIComponent(username)}/events/public?per_page=100&page=${page}`, + token + ); allEvents.push(...events); if (events.length < 100) break; } catch (error) { @@ -697,6 +690,7 @@ export const fetchActivity = cache(async function fetchActivity( ) { throw error; } + logger.error("Event fetch failed:", error); break; } }