fix(ci): correct the Hacktoberfest tracker's open-issue count and add a countdown - #15233
Conversation
The tracker's "Open issues" line was showing the pull-request total (e.g.
621) instead of the issue total (107). GitHub's `/search/issues`
`is:issue` / `is:pr` qualifiers are unreliable on this large, high-churn
repo -- some runs return the PR pool for *both* queries, so the two lines
printed the same number.
Count without the flaky qualifiers instead:
- open PRs = the `Link: rel="last"` page number of `/repos/{repo}/pulls`
(deterministic, page-numbered pagination);
- open issues = the repo endpoint's `open_issues_count` (issues + PRs)
minus the open-PR total -- self-checking and stable.
Also add the requested Hacktoberfest countdown to the stats block:
- days until 2026-10-01;
- issues to close per day to clear the backlog;
- PRs to merge or close per day to clear the backlog.
Per-day figures round up (finishing a day early beats a day late) and
degrade to a clear message once Hacktoberfest starts, so the block never
divides by zero on the final day.
Closing this pull request as invalid@priya-sundaram-dev, this pull request is being closed as none of the checkboxes have been marked. It is important that you go through the checklist and mark the ones relevant to this pull request. Please read the Contributing guidelines. If you're facing any problem on how to mark a checkbox, please read the following instructions:
NOTE: Only |
|
How can we modify |
|
Good question — the root cause is that the checklist requirement is currently buried in a prose paragraph in the middle of the skill, so an AI coder (or a human skimming) generates the PR body straight from the template with every box left unchecked, and the keeper closes it before anyone reads it. Two concrete changes to
That keeps the keeper's guardrail intact (it's genuinely useful against low-effort dumps) while making 'tick a box' the unmissable last step instead of a footnote. Happy to open the PR with this wording if you'd like — I'll keep it to those two additions. |
|
Please create a pull request to make those changes. |
|
Opened #15237 with those changes. |
@cclauss — this addresses both of your review notes.
Not an algorithm change — this is a CI/tracker fix, so the algorithm-specific checkboxes below don't apply. Marking the ones that do so the keeper doesn't auto-close it again.
The 621 bug
docs/hacktober_2026_prep.mdreported Open issues: 621 when the repo has 107. Root cause: GitHub's/search/issuesis:issue/is:prqualifiers are unreliable on a repo this large and high-churn — some runs return the pull-request pool for both queries, which is why "Open issues" and "Open pull requests" printed the same number (621).I replaced the two search calls with deterministic ones:
Link: rel="last"page number of/repos/{repo}/pulls?state=open&per_page=1(that endpoint still uses page-numbered pagination, so the last page number is the count);open_issues_count(which counts issues and PRs) minus the open-PR total. Self-checking: 728 − 621 = 107. ✅(The
awaiting reviewsline still uses search; I paginated it fully and confirmed 458 is the true count, so I left it — happy to harden it the same way if you'd like.)New Hacktoberfest countdown
Added the three metrics you asked for to
## Automated statistics:Per-day numbers round up (finishing a day early beats a day late) and degrade to a plain message once Hacktoberfest starts, so the block never divides by zero on the final day.
Live output (regenerated into the doc)
ruff check,ruff format --check, andty checkall pass. Verified the new counters against the live API before committing.Describe your change:
Fixes the Hacktoberfest prep tracker's
Open issuescount (was echoing the PR count, now deterministic) and adds the three requested countdown metrics. Touchesscripts/hacktoberfest_prep_update.pyand the generateddocs/hacktober_2026_prep.md.Checklist: