From 99242af11020548df4aa9fb18968795bd23504dc Mon Sep 17 00:00:00 2001 From: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> Date: Thu, 14 Aug 2025 00:06:28 +0200 Subject: [PATCH] Update .github/scripts/auto-close-duplicates.mjs Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --- .github/scripts/auto-close-duplicates.mjs | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/.github/scripts/auto-close-duplicates.mjs b/.github/scripts/auto-close-duplicates.mjs index a48dffa7..5e7cf157 100644 --- a/.github/scripts/auto-close-duplicates.mjs +++ b/.github/scripts/auto-close-duplicates.mjs @@ -82,9 +82,12 @@ async function autoCloseDuplicates() { let page = 1; const perPage = 100; + const MAX_PAGES = 50; // Increase limit for larger repos + let foundRecentIssue = false; + while (true) { const pageIssues = await githubRequest( - `/repos/${owner}/${repo}/issues?state=open&per_page=${perPage}&page=${page}`, + `/repos/${owner}/${repo}/issues?state=open&per_page=${perPage}&page=${page}&sort=created&direction=desc`, token ); @@ -96,10 +99,22 @@ async function autoCloseDuplicates() { ); allIssues.push(...oldEnoughIssues); + + // If all issues on this page are newer than 3 days, we can stop + if (oldEnoughIssues.length === 0 && page === 1) { + foundRecentIssue = true; + break; + } + + // If we found some old issues but not all, continue to next page + // as there might be more old issues page++; // Safety limit to avoid infinite loops - if (page > 20) break; + if (page > MAX_PAGES) { + console.log(`[WARNING] Reached maximum page limit of ${MAX_PAGES}`); + break; + } } const issues = allIssues;