From a3a2f3269aa2b97388feb864137e695bb95e411f Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 27 Jun 2026 18:09:16 +0000 Subject: [PATCH] fix(rust-ci): pass explicit `toolchain: stable` to SHA-pinned dtolnay action MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The reusable Rust CI bundle pins `dtolnay/rust-toolchain` by commit SHA (`@67ef31d5…`). That action infers the toolchain from its `@`-ref (e.g. `@stable`), but a SHA ref carries no version, so its "parse toolchain version" step receives an empty `toolchain` and fails: 'toolchain' is a required input Process completed with exit code 1 This is the estate-wide `rust-ci / Cargo check + clippy + fmt` red seen on every PR across the ~28 repos consuming this reusable workflow (confirmed live in iseriser run 28287559313). Add `toolchain: stable` to all four `dtolnay/rust-toolchain` steps (check, test, audit, coverage), matching the `# stable` pin comment. Consumers inherit the fix on the next standards-reusable pin refresh. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01A6PSzJWpRxtzGDjUCEh7Mx --- .github/workflows/rust-ci-reusable.yml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/.github/workflows/rust-ci-reusable.yml b/.github/workflows/rust-ci-reusable.yml index c0c021f2..8cc9ad52 100644 --- a/.github/workflows/rust-ci-reusable.yml +++ b/.github/workflows/rust-ci-reusable.yml @@ -149,8 +149,14 @@ jobs: ref: ${{ github.ref }} - name: Install Rust toolchain + # `toolchain:` is mandatory because the action is pinned by commit SHA: + # dtolnay/rust-toolchain infers the toolchain from the `@`-ref (e.g. + # `@stable`), but a SHA ref carries no version, so the action's "parse + # toolchain version" step fails with `'toolchain' is a required input`. + # See standards estate-wide rust-ci red. uses: dtolnay/rust-toolchain@67ef31d5b988238dd797d409d6f9574278e20537 # stable with: + toolchain: stable components: clippy, rustfmt - name: Cache cargo registry and build @@ -190,7 +196,10 @@ jobs: ref: ${{ github.ref }} - name: Install Rust toolchain + # `toolchain:` mandatory under SHA pin — see Cargo check job above. uses: dtolnay/rust-toolchain@67ef31d5b988238dd797d409d6f9574278e20537 # stable + with: + toolchain: stable - name: Cache cargo registry and build uses: Swatinem/rust-cache@c19371144df3bb44fab255c43d04cbc2ab54d1c4 # v2 @@ -230,7 +239,10 @@ jobs: ref: ${{ github.ref }} - name: Install Rust toolchain + # `toolchain:` mandatory under SHA pin — see Cargo check job above. uses: dtolnay/rust-toolchain@67ef31d5b988238dd797d409d6f9574278e20537 # stable + with: + toolchain: stable - name: Install cargo-audit # Use the binstall path when available to skip a from-source rebuild @@ -260,7 +272,10 @@ jobs: ref: ${{ github.ref }} - name: Install Rust toolchain + # `toolchain:` mandatory under SHA pin — see Cargo check job above. uses: dtolnay/rust-toolchain@67ef31d5b988238dd797d409d6f9574278e20537 # stable + with: + toolchain: stable - name: Install tarpaulin run: cargo install cargo-tarpaulin --locked