From 4658d0d5a3affe8457c74351bf012fc9e17fa417 Mon Sep 17 00:00:00 2001 From: Wolfgang Walther Date: Thu, 6 Nov 2025 11:15:48 +0100 Subject: [PATCH] ci/github-script/bot: fix needs reviewer label The recent change to use the result of requesting reviewers for setting the `needs: reviewer` label caused a regression: It would not set the label for PRs where no reviewers were requested, because *too many were eligible*. Still - these PRs don't have reviewers, so they need attention otherwise - via the label. --- ci/github-script/reviewers.js | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/ci/github-script/reviewers.js b/ci/github-script/reviewers.js index 2ac0d346f369..c5f79c11d992 100644 --- a/ci/github-script/reviewers.js +++ b/ci/github-script/reviewers.js @@ -64,14 +64,6 @@ async function handleReviewers({ ).filter(Boolean) log('reviewers - reviewers', reviewers.join(', ')) - if (reviewers.length > 15) { - log( - `Too many reviewers (${reviewers.join(', ')}), skipping review requests.`, - ) - // false indicates, that we do have reviewers and don't need the "needs: reviewers" label. - return false - } - const requested_reviewers = new Set( pull_request.requested_reviewers.map(({ login }) => login), ) @@ -88,6 +80,14 @@ async function handleReviewers({ Array.from(existing_reviewers).join(', '), ) + if (reviewers.length > 15) { + log( + `Too many reviewers (${reviewers.join(', ')}), skipping review requests.`, + ) + // Return a boolean on whether the "needs: reviewers" label should be set. + return existing_reviewers.size === 0 && requested_reviewers.size === 0 + } + const non_requested_reviewers = new Set(reviewers) .difference(requested_reviewers) // We don't want to rerequest reviews from people who already reviewed. @@ -117,7 +117,7 @@ async function handleReviewers({ // Return a boolean on whether the "needs: reviewers" label should be set. return ( - new_reviewers.size === 0 && + non_requested_reviewers.size === 0 && existing_reviewers.size === 0 && requested_reviewers.size === 0 )