From 0810f9cc9442b031c6ec0f045cf54f0d04e427d9 Mon Sep 17 00:00:00 2001 From: Maaren <80040706+SSoggyTacoMan@users.noreply.github.com> Date: Sat, 17 Oct 2026 05:15:55 +0200 Subject: [PATCH 1/3] fix(ci): clarify reviewer contact instructions in triage and queue messages --- .github/PULL_REQUEST_TEMPLATE.md | 2 +- .github/scripts/auto-triage.mjs | 4 ++-- .github/scripts/duplicate-detection.mjs | 2 +- .github/scripts/stale-review-queue.mjs | 8 ++++---- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 6c98658396..b02708a2d0 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -38,4 +38,4 @@ Our automated bot will instantly check your game as soon as you submit this! To 4. **Is your game original?** The bot will check for plagiarism against all other games in the gallery. 5. **Did you include an image?** If you have an image, it must be in the [`/games/img` directory](https://github.com/hackclub/sprig/tree/main/games/img) and identically match your filename. -> Thanks for your PR! +> Thanks for your PR! Need help? Ask in #sprig on [Slack](https://hackclub.com/slack/) with your PR number, or tag @LucasHT22 here. diff --git a/.github/scripts/auto-triage.mjs b/.github/scripts/auto-triage.mjs index 82b36865bc..3017086c72 100644 --- a/.github/scripts/auto-triage.mjs +++ b/.github/scripts/auto-triage.mjs @@ -156,7 +156,7 @@ try { Auto triage could not complete validation for this submission: > ${error.message} -Please check that submitted files can be accessed, or ask a maintainer for assistance.`, +Please check that submitted files can be accessed, or ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here for assistance.`, }); process.exit(1); } @@ -696,7 +696,7 @@ ${links.join("\n")} ${checksSection}${warningLines.join("\n")} -${result.ok ? "Reviewers: please use the play link to playtest, then approve or request changes." : `@${pullRequest.user.login}: you can update your game right here ([edit file](${editUrl})) or push new commits. Once you do, these checks will rerun automatically! If you get stuck or have questions, ask in the #sprig channel on Slack or ping @LucasHT22 here.`} +${result.ok ? "Reviewers: please use the play link to playtest, then approve or request changes.\n\nAuthor: if your PR has been waiting for review, ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here." : `@${pullRequest.user.login}: you can update your game right here ([edit file](${editUrl})) or push new commits. Once you do, these checks will rerun automatically! If you get stuck or have questions, ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here.`} `; } diff --git a/.github/scripts/duplicate-detection.mjs b/.github/scripts/duplicate-detection.mjs index af13ed2c97..304b6a6718 100644 --- a/.github/scripts/duplicate-detection.mjs +++ b/.github/scripts/duplicate-detection.mjs @@ -39,7 +39,7 @@ To keep reviews fair and fast for everyone, authors can only have one submission - **Same game?** You do not need to open a new PR to update your game! Pushing commits or editing files in your existing PR updates it automatically. Usually your newer PR (**#${latestNumber}**) has your latest changes, but please check which PR has your best version, keep that one, and close the other. - **Different games?** That is awesome, but our review team can only review one game per author at a time. Please choose which game you would like reviewed first, keep that PR open, and close the other. You can submit your next game once this one is merged! -- **Next steps:** If no action is taken, this older PR will close automatically in ${DUPLICATE_CLOSE_AFTER_DAYS} days so your newest PR can move forward. If you prefer to keep this older PR instead, please close #${latestNumber}. If you need any help, feel free to ask in the #sprig channel on Slack!`; +- **Next steps:** If no action is taken, this older PR will close automatically in ${DUPLICATE_CLOSE_AFTER_DAYS} days so your newest PR can move forward. If you prefer to keep this older PR instead, please close #${latestNumber}. If you need any help, feel free to ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here!`; } export function buildLatestWarning({ older }) { diff --git a/.github/scripts/stale-review-queue.mjs b/.github/scripts/stale-review-queue.mjs index 568210b365..04fbd4f3fc 100644 --- a/.github/scripts/stale-review-queue.mjs +++ b/.github/scripts/stale-review-queue.mjs @@ -114,7 +114,7 @@ async function handleOlderDuplicate(pullRequest, labels) { await commentOnce({ issueNumber: pullRequest.number, marker: "", - body: `Closing this older submission so your newer PR (#${latestNumber}) can move forward. If you would rather keep this game instead, close #${latestNumber} and ask a reviewer to reopen this PR.`, + body: `Closing this older submission so your newer PR (#${latestNumber}) can move forward. If you would rather keep this game instead, close #${latestNumber} and ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here to reopen this PR.`, }); await githubRequest(token, "PATCH", `/repos/${owner}/${repo}/issues/${pullRequest.number}`, { state: "closed" }); closedDuplicateNumbers.add(pullRequest.number); @@ -153,7 +153,7 @@ async function handleNeedsAuthor(pullRequest, labels) { await commentOnce({ issueNumber: pullRequest.number, marker: ``, - body: "Closing this submission for now since there has been no activity for 14 days. Whenever you want to return to it, push your fixes and ping a reviewer to reopen it. We would love to see your game in the gallery!", + body: "Closing this submission for now since there has been no activity for 14 days. Whenever you want to return to it, push your fixes and ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here to reopen it. We would love to see your game in the gallery!", }); await githubRequest(token, "PATCH", `/repos/${owner}/${repo}/issues/${pullRequest.number}`, { state: "closed", @@ -166,7 +166,7 @@ async function handleNeedsAuthor(pullRequest, labels) { await commentOnce({ issueNumber: pullRequest.number, marker: ``, - body: "Just checking in! This submission has been waiting for updates for 7 days. Whenever you have time, push your fixes so we can get your game reviewed. If there is no response after 14 days, the PR will close automatically, but you can always ask a reviewer to reopen it whenever you are ready!", + body: "Just checking in! This submission has been waiting for updates for 7 days. Whenever you have time, push your fixes so we can get your game reviewed. If there is no response after 14 days, the PR will close automatically, but you can always ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here to reopen it whenever you are ready!", }); } else if (hasLabel(labels, "Stale")) { await removeLabel({ owner, repo, token, issueNumber: pullRequest.number, label: "Stale" }); @@ -227,7 +227,7 @@ async function handleUntouchedSubmission(pullRequest, labels) { await commentOnce({ issueNumber: pullRequest.number, marker: STALE_REMINDER_MARKER, - body: "This submission hasn't had any activity in over 30 days. Marking as Stale to get reviewer attention.", + body: "This submission hasn't had any activity in over 30 days. Marking as Stale to get reviewer attention. If your submission is ready for review, ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here.", }); } } From 5183d815392585c328812ed8733385d212df8e0b Mon Sep 17 00:00:00 2001 From: Maaren <80040706+SSoggyTacoMan@users.noreply.github.com> Date: Sat, 17 Oct 2026 05:23:00 +0200 Subject: [PATCH 2/3] fix(ci): clarify review wait threshold before escalating to maintainer --- .github/scripts/auto-triage.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/scripts/auto-triage.mjs b/.github/scripts/auto-triage.mjs index 3017086c72..7c4a114063 100644 --- a/.github/scripts/auto-triage.mjs +++ b/.github/scripts/auto-triage.mjs @@ -696,7 +696,7 @@ ${links.join("\n")} ${checksSection}${warningLines.join("\n")} -${result.ok ? "Reviewers: please use the play link to playtest, then approve or request changes.\n\nAuthor: if your PR has been waiting for review, ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here." : `@${pullRequest.user.login}: you can update your game right here ([edit file](${editUrl})) or push new commits. Once you do, these checks will rerun automatically! If you get stuck or have questions, ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here.`} +${result.ok ? "Reviewers: please use the play link to playtest, then approve or request changes.\n\nAuthor: if your PR has been waiting for review for more than a few days, ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here." : `@${pullRequest.user.login}: you can update your game right here ([edit file](${editUrl})) or push new commits. Once you do, these checks will rerun automatically! If you get stuck or have questions, ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here.`} `; } From 5413a5e7019034d38615a9ae16a74a5a1b32ef74 Mon Sep 17 00:00:00 2001 From: Maaren <80040706+SSoggyTacoMan@users.noreply.github.com> Date: Sat, 17 Oct 2026 05:28:52 +0200 Subject: [PATCH 3/3] fix(ci): format maintainer handle in backticks to avoid automated mention spam --- .github/PULL_REQUEST_TEMPLATE.md | 2 +- .github/scripts/auto-triage.mjs | 4 ++-- .github/scripts/duplicate-detection.mjs | 2 +- .github/scripts/stale-review-queue.mjs | 8 ++++---- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index b02708a2d0..dcee6debd3 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -38,4 +38,4 @@ Our automated bot will instantly check your game as soon as you submit this! To 4. **Is your game original?** The bot will check for plagiarism against all other games in the gallery. 5. **Did you include an image?** If you have an image, it must be in the [`/games/img` directory](https://github.com/hackclub/sprig/tree/main/games/img) and identically match your filename. -> Thanks for your PR! Need help? Ask in #sprig on [Slack](https://hackclub.com/slack/) with your PR number, or tag @LucasHT22 here. +> Thanks for your PR! Need help? Ask in #sprig on [Slack](https://hackclub.com/slack/) with your PR number, or tag `@LucasHT22` here. diff --git a/.github/scripts/auto-triage.mjs b/.github/scripts/auto-triage.mjs index 7c4a114063..8d83e38f57 100644 --- a/.github/scripts/auto-triage.mjs +++ b/.github/scripts/auto-triage.mjs @@ -156,7 +156,7 @@ try { Auto triage could not complete validation for this submission: > ${error.message} -Please check that submitted files can be accessed, or ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here for assistance.`, +Please check that submitted files can be accessed, or ask in #sprig on Slack (with your PR number) or tag \`@LucasHT22\` here for assistance.`, }); process.exit(1); } @@ -696,7 +696,7 @@ ${links.join("\n")} ${checksSection}${warningLines.join("\n")} -${result.ok ? "Reviewers: please use the play link to playtest, then approve or request changes.\n\nAuthor: if your PR has been waiting for review for more than a few days, ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here." : `@${pullRequest.user.login}: you can update your game right here ([edit file](${editUrl})) or push new commits. Once you do, these checks will rerun automatically! If you get stuck or have questions, ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here.`} +${result.ok ? "Reviewers: please use the play link to playtest, then approve or request changes.\n\nAuthor: if your PR has been waiting for review for more than a few days, ask in #sprig on Slack (with your PR number) or tag `@LucasHT22` here." : `@${pullRequest.user.login}: you can update your game right here ([edit file](${editUrl})) or push new commits. Once you do, these checks will rerun automatically! If you get stuck or have questions, ask in #sprig on Slack (with your PR number) or tag \`@LucasHT22\` here.`} `; } diff --git a/.github/scripts/duplicate-detection.mjs b/.github/scripts/duplicate-detection.mjs index 304b6a6718..01f68c7c63 100644 --- a/.github/scripts/duplicate-detection.mjs +++ b/.github/scripts/duplicate-detection.mjs @@ -39,7 +39,7 @@ To keep reviews fair and fast for everyone, authors can only have one submission - **Same game?** You do not need to open a new PR to update your game! Pushing commits or editing files in your existing PR updates it automatically. Usually your newer PR (**#${latestNumber}**) has your latest changes, but please check which PR has your best version, keep that one, and close the other. - **Different games?** That is awesome, but our review team can only review one game per author at a time. Please choose which game you would like reviewed first, keep that PR open, and close the other. You can submit your next game once this one is merged! -- **Next steps:** If no action is taken, this older PR will close automatically in ${DUPLICATE_CLOSE_AFTER_DAYS} days so your newest PR can move forward. If you prefer to keep this older PR instead, please close #${latestNumber}. If you need any help, feel free to ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here!`; +- **Next steps:** If no action is taken, this older PR will close automatically in ${DUPLICATE_CLOSE_AFTER_DAYS} days so your newest PR can move forward. If you prefer to keep this older PR instead, please close #${latestNumber}. If you need any help, feel free to ask in #sprig on Slack (with your PR number) or tag \`@LucasHT22\` here!`; } export function buildLatestWarning({ older }) { diff --git a/.github/scripts/stale-review-queue.mjs b/.github/scripts/stale-review-queue.mjs index 04fbd4f3fc..2967e34380 100644 --- a/.github/scripts/stale-review-queue.mjs +++ b/.github/scripts/stale-review-queue.mjs @@ -114,7 +114,7 @@ async function handleOlderDuplicate(pullRequest, labels) { await commentOnce({ issueNumber: pullRequest.number, marker: "", - body: `Closing this older submission so your newer PR (#${latestNumber}) can move forward. If you would rather keep this game instead, close #${latestNumber} and ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here to reopen this PR.`, + body: `Closing this older submission so your newer PR (#${latestNumber}) can move forward. If you would rather keep this game instead, close #${latestNumber} and ask in #sprig on Slack (with your PR number) or tag \`@LucasHT22\` here to reopen this PR.`, }); await githubRequest(token, "PATCH", `/repos/${owner}/${repo}/issues/${pullRequest.number}`, { state: "closed" }); closedDuplicateNumbers.add(pullRequest.number); @@ -153,7 +153,7 @@ async function handleNeedsAuthor(pullRequest, labels) { await commentOnce({ issueNumber: pullRequest.number, marker: ``, - body: "Closing this submission for now since there has been no activity for 14 days. Whenever you want to return to it, push your fixes and ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here to reopen it. We would love to see your game in the gallery!", + body: "Closing this submission for now since there has been no activity for 14 days. Whenever you want to return to it, push your fixes and ask in #sprig on Slack (with your PR number) or tag `@LucasHT22` here to reopen it. We would love to see your game in the gallery!", }); await githubRequest(token, "PATCH", `/repos/${owner}/${repo}/issues/${pullRequest.number}`, { state: "closed", @@ -166,7 +166,7 @@ async function handleNeedsAuthor(pullRequest, labels) { await commentOnce({ issueNumber: pullRequest.number, marker: ``, - body: "Just checking in! This submission has been waiting for updates for 7 days. Whenever you have time, push your fixes so we can get your game reviewed. If there is no response after 14 days, the PR will close automatically, but you can always ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here to reopen it whenever you are ready!", + body: "Just checking in! This submission has been waiting for updates for 7 days. Whenever you have time, push your fixes so we can get your game reviewed. If there is no response after 14 days, the PR will close automatically, but you can always ask in #sprig on Slack (with your PR number) or tag `@LucasHT22` here to reopen it whenever you are ready!", }); } else if (hasLabel(labels, "Stale")) { await removeLabel({ owner, repo, token, issueNumber: pullRequest.number, label: "Stale" }); @@ -227,7 +227,7 @@ async function handleUntouchedSubmission(pullRequest, labels) { await commentOnce({ issueNumber: pullRequest.number, marker: STALE_REMINDER_MARKER, - body: "This submission hasn't had any activity in over 30 days. Marking as Stale to get reviewer attention. If your submission is ready for review, ask in #sprig on Slack (with your PR number) or tag @LucasHT22 here.", + body: "This submission hasn't had any activity in over 30 days. Marking as Stale to get reviewer attention. If your submission is ready for review, ask in #sprig on Slack (with your PR number) or tag `@LucasHT22` here.", }); } }