Skip to content

fix: serialize pipeline matrix legs to prevent secondary GitHub rate limits - #154

Draft
cursor[bot] wants to merge 1 commit into
mainfrom
cursor/issue-resolution-5984
Draft

fix: serialize pipeline matrix legs to prevent secondary GitHub rate limits#154
cursor[bot] wants to merge 1 commit into
mainfrom
cursor/issue-resolution-5984

Conversation

@cursor

@cursor cursor Bot commented Aug 19, 2026

Copy link
Copy Markdown

Fixes #153

Problem

The github and citations matrix legs in run_pipelines.yml both authenticate to api.github.com with the same GH_TOKEN_STATS_PAGE token. When they run concurrently, citations' ~200-request burst (2 nextflow.config lookups per nf-core pipeline) collides with github's org-repo crawl on the same token, tripping GitHub's secondary rate limit — even when the primary quota still shows thousands of requests remaining.

Run 32287740582 is the canonical example: /rate_limit preflight read 4970/5000 remaining, then the very next real request (GET /orgs/nf-core/repos) 403'd with a reset time that didn't match the hourly bucket.

Fix

  • Add max-parallel: 1 to the run_pipelines matrix strategy so github, slack, citations, and newsletter never race each other against the same GitHub token.
  • Document the constraint in pipeline/AGENTS.md so future GitHub-API-calling pipelines stay in the serialized matrix.

Trade-off

Pipeline legs now run sequentially instead of in parallel, so total CI wall time increases. This is intentional — the alternative is intermittent secondary rate-limit failures that abort the github crawl mid-run.

Open in Web View Automation 

…token

Add max-parallel: 1 to the run_pipelines matrix so github, slack, citations,
and newsletter never hit api.github.com concurrently on the same
GH_TOKEN_STATS_PAGE token. Concurrent github + citations legs tripped a
secondary rate limit (issue #153) even when the primary quota showed
4970/5000 remaining.

Document the serialization constraint in pipeline/AGENTS.md for future
GitHub-API-calling pipelines.

Co-authored-by: Edmund Miller <edmundmiller@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

GitHub Stats Pipeline is DOWN

1 participant