Skip to content

ci: right-size runner registration caps#97119

Merged
vincentkoc merged 1 commit into
mainfrom
ci/runner-limit-3000
Jun 26, 2026
Merged

ci: right-size runner registration caps#97119
vincentkoc merged 1 commit into
mainfrom
ci/runner-limit-3000

Conversation

@vincentkoc

Copy link
Copy Markdown
Member

What Problem This Solves

GitHub increased the OpenClaw runner-registration bucket to 3,000 self-hosted registrations per 5 minutes. Our CI limits and maintainer guidance were still sized around the older 1,500 bucket, leaving safe throughput on the table while main CI remained slower than needed.

Why This Change Was Made

This keeps the existing burst protections, main-push debounce, compact PR plan, and platform caps, but right-sizes the Linux CI max-parallel values for the new bucket. The operating target moves from 1,000 to 2,000 registrations per 5 minutes so we still reserve roughly one-third of the org bucket for ClawSweeper, ClawHub, retries, and overlapping repo activity.

User Impact

Main and PR CI should admit more Linux work once a run passes the debounce, without adding jobs or moving CodeQL back to Blacksmith. Windows and Android stay capped at two.

Evidence

  • node scripts/run-vitest.mjs test/scripts/ci-workflow-guards.test.ts
  • node scripts/check-workflows.mjs
  • node scripts/docs-list.js
  • ./node_modules/.bin/oxfmt --check .github/workflows/ci.yml docs/ci.md test/scripts/ci-workflow-guards.test.ts .agents/skills/openclaw-ci-limits/SKILL.md
  • git diff --check
  • .agents/skills/autoreview/scripts/autoreview --mode branch --base origin/main clean

Operational note: attempted to cancel 77 stale queued OpenClaw Actions runs older than 24h. GitHub returned backend 500s for normal cancel and force-cancel; sample force-cancel request id: 10DD:262C01:388DA56:396FE3F:6A3F0152.

@vincentkoc vincentkoc self-assigned this Jun 26, 2026
@openclaw-barnacle openclaw-barnacle Bot added docs Improvements or additions to documentation size: XS maintainer Maintainer-authored PR labels Jun 26, 2026
@clawsweeper

clawsweeper Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Codex review: needs maintainer review before merge. Reviewed June 26, 2026, 6:58 PM ET / 22:58 UTC.

Summary
The PR adjusts CI runner-registration capacity guidance and raises selected Linux CI max-parallel values in the workflow, guard test, docs, and CI-limits skill.

PR surface: Tests 0, Docs +1, Config 0. Total +1 across 4 files.

Reproducibility: not applicable. this is CI capacity tuning rather than a product bug. The review path is source inspection plus live operations checks for the workflow caps, docs, guard tests, CI status, and rate-limit evidence.

Review metrics: 2 noteworthy metrics.

  • Linux fanout caps: 5 caps 8->12; 1 cap 16->24. These are the concrete Blacksmith runner-registration pressure knobs changed by the PR.
  • Operating target: 1,000->2,000 registrations per 5 minutes. The doubled budget depends on the external production runner-registration bucket being correct before merge.

Merge readiness
Overall: 🐚 platinum hermit
Proof: 🌊 off-meta tidepool
Patch quality: 🐚 platinum hermit
Result: ready for maintainer review.

Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch.

Rank-up moves:

  • Confirm the production actions_runner_registration bucket used by OpenClaw Blacksmith before relying on the 2,000 operating target.

Risk before merge

  • [P1] Merging this increases Blacksmith-backed Linux CI fanout; if the production runner-registration bucket is not actually 3,000 per 5 minutes for the OpenClaw org path, CI queueing or registration throttling can get worse after merge.
  • [P1] The available live rate-limit check did not match the PR's 3,000 bucket claim, so maintainer-owned credential/support confirmation remains the key pre-merge proof.

Maintainer options:

  1. Confirm the production bucket (recommended)
    Verify the runner-registration limit using the credential and org path that actually backs OpenClaw Blacksmith registrations, then adjust the caps or docs if the 2,000 target is not supported.
  2. Land with active monitoring
    If maintainers already have external confirmation for the 3,000 bucket, merge as-is and watch the next main CI cycle plus adjacent repo activity for registration throttling.

Next step before merge

  • [P2] Protected maintainer CI-capacity work should stay in maintainer review because the remaining action is operational bucket confirmation and exact-head CI gating, not an automated code repair.

Security
Cleared: No concrete security or supply-chain concern found; the PR changes existing CI fanout values and docs/tests without adding actions, permissions, secrets, dependencies, downloads, or execution sources.

Review details

Best possible solution:

Land this synchronized workflow/docs/test/skill update only after maintainers confirm the production runner-registration bucket and exact-head CI gates are healthy.

Do we have a high-confidence way to reproduce the issue?

Not applicable: this is CI capacity tuning rather than a product bug. The review path is source inspection plus live operations checks for the workflow caps, docs, guard tests, CI status, and rate-limit evidence.

Is this the best way to solve the issue?

Yes, this is the right code shape because the workflow, docs, guard test, and CI-limits skill move together. The unresolved question is operational confirmation of the production runner-registration bucket, not a narrower code fix.

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning high; reviewed against aca905cce50a.

Label changes

Label justifications:

  • P3: This is low-risk maintainer CI throughput/admin tuning rather than a user-facing runtime regression.
  • merge-risk: 🚨 automation: The diff changes GitHub Actions matrix fanout and can affect CI queueing or runner-registration throttling after merge.
  • rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🌊 off-meta tidepool and patch quality is 🐚 platinum hermit.
  • status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Not applicable: Not applicable: this is a maintainer-authored CI/admin PR, so the external contributor real-behavior proof gate does not apply; operational bucket confirmation remains a maintainer merge check.
Evidence reviewed

PR surface:

Tests 0, Docs +1, Config 0. Total +1 across 4 files.

View PR surface stats
Area Files Added Removed Net
Source 0 0 0 0
Tests 1 6 6 0
Docs 2 15 14 +1
Config 1 7 7 0
Generated 0 0 0 0
Other 0 0 0 0
Total 4 28 27 +1

What I checked:

  • PR diff changes CI fanout caps: The branch raises five Linux Blacksmith-backed caps from 8 to 12 and the large Node shard cap from 16 to 24 while leaving Windows and Android capped at 2. (.github/workflows/ci.yml:861, 6612f6b1bdea)
  • Guard test updated with the same caps: The CI workflow guard asserts the new 12/24 Linux caps and still asserts Windows and Android remain at 2. (test/scripts/ci-workflow-guards.test.ts:185, 6612f6b1bdea)
  • Docs and skill update the operating target: The public CI docs and CI-limits skill now state a 3,000 registration bucket with a 2,000 per-5-minute operating target. Public docs: docs/ci.md. (docs/ci.md:148, 6612f6b1bdea)
  • Current main still has the old limits: Current main retains the 8/16 Linux caps and the 1,500/1,000 registration guidance, so this PR is not already implemented on main. (.github/workflows/ci.yml:861, aca905cce50a)
  • Live rate-limit proof gap: GitHub documents actions_runner_registration as the rate-limit object for self-hosted runner registrations, but the available token reports limit=10000, so this check did not verify the PR body's stated 3,000 OpenClaw production bucket. (docs.github.com)
  • Recent history points to CI capacity owners: GitHub commit history for the workflow shows recent runner-admission, fanout, CodeQL-off-Blacksmith, and runner-sizing work concentrated around vincentkoc, with recent adjacent CI docs/test changes by RomneyDa and Solvely-Colin. (.github/workflows/ci.yml)

Likely related people:

  • vincentkoc: Authored recent runner-admission, fanout, CodeQL-off-Blacksmith, and CI-limits skill work on the same CI capacity surface. (role: feature owner; confidence: high; commits: 607b2e96634c, 7d3bc4d944cd, a1828110704f; files: .github/workflows/ci.yml, docs/ci.md, .agents/skills/openclaw-ci-limits/SKILL.md)
  • RomneyDa: Recent workflow-guard and CI-doc history includes multiple adjacent CI changes, including timing summary and release QA evidence updates. (role: recent adjacent contributor; confidence: medium; commits: 899f65097b28, 8a5cb85c31e5, 7e0083ce0b4b; files: .github/workflows/ci.yml, test/scripts/ci-workflow-guards.test.ts, docs/ci.md)
  • Solvely-Colin: Recent workflow/docs history includes the QA smoke CI change that touched the same workflow and docs surfaces. (role: adjacent contributor; confidence: low; commits: 4ae0a5d958a0; files: .github/workflows/ci.yml, docs/ci.md, test/scripts/ci-workflow-guards.test.ts)
What the crustacean ranks mean
  • 🦀 challenger crab: rare, exceptional readiness with strong proof, clean implementation, and convincing validation.
  • 🦞 diamond lobster: very strong readiness with only minor maintainer review expected.
  • 🐚 platinum hermit: good normal PR, likely mergeable with ordinary maintainer review.
  • 🦐 gold shrimp: useful signal, but proof or patch confidence is still limited.
  • 🦪 silver shellfish: thin signal; proof, validation, or implementation needs work.
  • 🧂 unranked krab: not merge-ready because proof is missing/unusable or there are serious correctness or safety concerns.
  • 🌊 off-meta tidepool: rating does not apply to this item.

Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

How this review workflow works
  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.

@clawsweeper clawsweeper Bot added rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. P3 Low-priority cleanup, docs, polish, ergonomics, or speculative work. merge-risk: 🚨 automation 🚨 May affect CI, automerge, proof capture, label sync, or maintainer automation. labels Jun 26, 2026
@vincentkoc
vincentkoc merged commit a82902c into main Jun 26, 2026
182 of 191 checks passed
@vincentkoc
vincentkoc deleted the ci/runner-limit-3000 branch June 26, 2026 23:01
@vincentkoc

Copy link
Copy Markdown
Member Author

Merged via squash.

wangmiao0668000666 pushed a commit to wangmiao0668000666/openclaw that referenced this pull request Jun 27, 2026
github-actions Bot pushed a commit to Desicool/openclaw that referenced this pull request Jun 27, 2026
xydigit-zt pushed a commit to xydigit-zt/xydigit-zt-openclaw that referenced this pull request Jun 28, 2026
QiuYuang pushed a commit to QiuYuang/openclaw that referenced this pull request Jul 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs Improvements or additions to documentation maintainer Maintainer-authored PR merge-risk: 🚨 automation 🚨 May affect CI, automerge, proof capture, label sync, or maintainer automation. P3 Low-priority cleanup, docs, polish, ergonomics, or speculative work. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. size: XS status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant