chore(gha): cap missing integration matrix parallelism#239
Merged
so0k merged 1 commit intoJun 5, 2026
Merged
Conversation
so0k
approved these changes
Jun 5, 2026
Contributor
so0k
left a comment
There was a problem hiding this comment.
I think we are going to get blocked/rate limited soon - this is quite urgent and it's conservative so I will merge it
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
max-parallelto the integration-test matrix jobs that did not have it yet.max-parallel: 30unchanged.Why
GitHub documents
jobs.<job_id>.strategy.max-parallelas the way to cap simultaneous matrix jobs. GitHub also documents that Actions jobs and workflow runs run concurrently by default, and its REST/API guidance recommends avoiding concurrent request bursts because secondary rate limits can be triggered even before hourly primary limits are exhausted.Relevant limits/recommendations considered:
GITHUB_TOKENprimary REST API limit: 1,000 requests/hour/repository.actions/cache, setup actions, and any tool using the GitHub Actions cache API automatically use Depot Cache on Depot runners with no workflow changes. Therefore, cache calls on Depot-backed jobs should not be counted as GitHub cache-service pressure, although non-cache GitHub service traffic such as checkout, artifact download, and action download still remains.Deterministic workflow/matrix breakdown
Computed from the repo's matrix builder scripts on
origin/main:Active PR integration-related runner jobs:
Current initial matrix wave before this PR:
The deterministic script counted GitHub-facing action steps in that initial wave. Raw counts, before accounting for Depot Cache:
After excluding cache/cache-restore steps from jobs running on Depot runners, the cache-service pressure is lower:
This does not mean exactly 665 REST API calls, but it is a deterministic signal that the first wave still causes a large simultaneous burst against GitHub-managed services, primarily checkout, artifacts, action downloads, and cache calls from GitHub-hosted jobs.
Scenarios evaluated
This PR deliberately does not change
linux_integrationfrom30to20; that should wait for maintainer agreement on the broader analysis.What this PR changes
This PR adds only the missing caps:
Resulting initial matrix wave after this PR:
Raw action-step counts after this PR:
After excluding Depot-runner cache/cache-restore steps:
That reduces the initial matrix burst from 117 to 70 jobs without changing the existing integration workflow cap.
Validation
Also ran
git diff --checksuccessfully.