Conversation
euroelessar
approved these changes
Mar 28, 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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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
Split the old all-in-one
rust-ci.ymlinto:rust-ci.ymlrust-ci-full.ymlThis keeps the PR path focused on fast Cargo-native hygiene plus the Bazel
build/test/clippycoverage inbazel.yml, while moving the heavyweight Cargo-native matrix tomain.Why
bazel.ymlis now the main Rust verification workflow for pull requests. It already covers the Bazel build, test, and clippy signal we care about pre-merge, and it also runs on pushes tomainto re-verify the merged tree and help keep the BuildBuddy caches warm.What was still missing was a clean split for the Cargo-native checks that Bazel does not replace yet. The old
rust-ci.ymlmixed together:cargo fmt --checkandcargo shearargument-comment-lintThat made every PR pay for the full Cargo matrix even though most of that coverage is better treated as post-merge verification. The goal of this change is to leave PRs with the checks we still want before merge, while moving the heavier Cargo-native matrix off the review path.
What Changed
rust-ci-full.ymland limited it topushonmainplusworkflow_dispatch.rust-ci.ymlthat runs:cargo fmt --checkcargo shearargument-comment-linton Linux, macOS, and Windowstools/argument-comment-lintpackage tests when the lint itself or its workflow wiring changes.github/workflows/README.mdto document the intended split betweenbazel.yml,rust-ci.yml, andrust-ci-full.yml.argument-comment-lintbehavior frome02fd6e1d3inrust-ci-full.yml, and mirrored cross-platform lint coverage into the PR workflow.A few details are deliberate:
bazel.yml; it changes the Cargo-native workflow around the existing Bazel PR path.Testing
mainaftere02fd6e1d3ruby -e 'require "yaml"; %w[.github/workflows/rust-ci.yml .github/workflows/rust-ci-full.yml .github/workflows/bazel.yml].each { |f| YAML.load_file(f) }'