Skip to content

Add job timeouts and PR concurrency to workflows - #18

Merged
woksin merged 2 commits into
mainfrom
chore/ci-timeouts-concurrency
Aug 25, 2026
Merged

Add job timeouts and PR concurrency to workflows#18
woksin merged 2 commits into
mainfrom
chore/ci-timeouts-concurrency

Conversation

@woksin

Copy link
Copy Markdown
Collaborator

Part of the org-wide Actions throttling remediation. Mechanical, rule-based sweep:

  • timeout-minutes on every job that had none (previously 6 h default): quick checks 15, builds 30, publish/release 60, integration/benchmarks 120.
  • concurrency + cancel-in-progress only on pull-request-triggered verification workflows — never on publish/release/deploy, pull_request_target, workflow_run or reusable (workflow_call) workflows.

Every edited file re-parsed as YAML before commit. Files changed:

  • .github/workflows/build.yml
  • .github/workflows/markdown-verification.yml
  • .github/workflows/publish.yml
  • .github/workflows/verify-semver-label.yml

Jobs had no timeout-minutes, so a hung job could hold one of the
organization's 20 shared hosted-runner slots for the 6 hour default - a
contributor to the 2026-08-25 runner starvation. Verification workflows
triggered by pull requests also lacked a concurrency group, so rapid
successive pushes stacked duplicate runs instead of cancelling stale ones.
Rules applied: quick checks 15 min, builds 30 min, publish/release 60 min,
integration/benchmarks 120 min; cancel-in-progress only on pull-request
verification workflows, never on publish, release or deploy workflows.
@woksinwoksin added patch Backward-compatible fix no-release No package release required and removed patch Backward-compatible fix labels Aug 25, 2026
@woksin
woksin merged commit 055aaaa into mainAug 25, 2026
8 of 10 checks passed
@woksin
woksin deleted the chore/ci-timeouts-concurrency branch August 25, 2026 22:59
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

no-releaseNo package release required

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@woksin