feat(ci-check-app): run-label-light for jobs that never compile the workspace - #30
Open
geekbrother wants to merge 1 commit into
Open
feat(ci-check-app): run-label-light for jobs that never compile the workspace#30geekbrother wants to merge 1 commit into
geekbrother wants to merge 1 commit into
Conversation
…orkspace Formatting and Licenses inherited check-app's single run-label, so a consumer that sets a larger runner for the compile jobs (clippy, tests) pays the same 8x rate for jobs that cannot use it: `cargo fmt -- --check` only parses (the job's own comment notes it restores no cache for exactly this reason), and cargo-deny runs a prebuilt binary against cargo metadata. Measured in pay-core: the Check Formatting step is ~10s of rustfmt; the rest of the job is checkout + toolchain download, which is network-bound on any runner. Adds an optional `run-label-light` input (default ubuntu-latest) used by the Formatting and Licenses jobs, threaded through the ci.yml umbrella. Backward compatible: no consumer currently overrides these jobs' runner away from ubuntu-latest except pay-core, for which this is the fix (~$220/mo of larger- runner minutes across event_pr + event_release). Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
rplusq
approved these changes
Aug 10, 2026
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.
What
Adds an optional
run-label-lightinput (defaultubuntu-latest) toci-check-app.yml, used by the Formatting and Licenses jobs, threaded through theci.ymlumbrella.Why
These two jobs never compile the workspace, so they gain nothing from a larger runner:
cargo fmt -- --checkonly parses — the job's own comment notes it restores no cache for exactly this reason. Measured in pay-core: theCheck Formattingstep is ~10 seconds of rustfmt; the remaining job time is checkout + toolchain download, which is network-bound on any runner class.cargo-deny check licensesruns a prebuilt binary againstcargo metadata— norustcinvolved.pay-core passes
run-label: ubuntu-16core(8× the standard rate) so its clippy/test jobs compile fast — and Formatting + Licenses inherit that label for no benefit: ~$220/mo of larger-runner minutes acrossevent_pr+event_release(WalletConnect/pay-core#1387 has the full cost analysis).Compatibility
Backward compatible: the input is optional and defaults to
ubuntu-latest, which is what every consumer except pay-core already effectively uses (no other repo overridesrun-label). Consumers that do want these jobs on a larger runner can passrun-label-lightexplicitly.🤖 Generated with Claude Code