chore(supply-chain): pin Rust toolchain to 1.94.1 with commit SHA#30
Merged
brettdavies merged 1 commit intodevelopmentfrom Apr 16, 2026
Merged
chore(supply-chain): pin Rust toolchain to 1.94.1 with commit SHA#30brettdavies merged 1 commit intodevelopmentfrom
brettdavies merged 1 commit intodevelopmentfrom
Conversation
Pin rust-toolchain.toml to a specific release instead of floating `stable`. Rustup verifies component SHA256s from the distribution manifest — the version pin is effectively a SHA pin. Trailing comment documents the rustc commit SHA for audit, mirroring the GitHub Actions SHA-pin pattern (action@<sha> # vN.N.N). Both local and CI now read rust-toolchain.toml and install identical bits. Matches the pattern applied in agentnative. Policy: bump the channel only via reviewed PR, after the new stable has aged ≥7 days. This matches UV_EXCLUDE_NEWER / bun minimumReleaseAge / npm_config_min_release_age quarantine already in dotfiles.
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.
Summary
Pin
rust-toolchain.tomlto a specificX.Y.Zrelease with a trailing rustc commit-SHA comment, replacing thefloating
channel = "stable". Rustup verifies component SHA256s from the distribution manifest, so the version pin iseffectively a SHA pin (the manifest is the toolchain's lockfile). Both local and CI now read the same file and install
identical bits.
Mirrors the pattern just shipped in
agentnativePR #17, whichwas motivated by a real CI-only clippy failure during PR review: local clippy 1.94 passed a lint that CI clippy 1.95
rejected because
channel = "stable"let rustc drift between environments.Changelog
Type of Change
chore: Maintenance tasks (supply-chain toolchain pin)Related Issues/Stories
Testing
Test Summary:
-Dwarningson rustc 1.94.1 (pinned)Files Modified
Modified:
rust-toolchain.toml— pinnedchannel = "1.94.1"with trailing comment naming the rustc commit SHA and releasedate; bumped from floating
channel = "stable". Added 4 lines of header comments documenting the supply-chainrationale and the ≥7-day quarantine policy.
Key Details
Toolchain pin format:
channel = "1.94.1" # rustc e408947bfd200af42db322daf0fadfe7e26d3bd1, released 2026-03-25.Comment mirrors the GitHub Actions SHA-pin pattern (
action@<sha> # vN.N.N).Policy: bump the channel only via reviewed PR, after the new stable has aged ≥7 days. Matches the broader
brettdavies supply-chain posture (
UV_EXCLUDE_NEWER, bunminimumReleaseAge,npm_config_min_release_agealreadyin dotfiles).
MSRV compatibility: bird's
rust-version = "1.87"; 1.94.1 satisfies it comfortably.No hook / workflow changes needed: neither
scripts/hooks/pre-push,.githooks/pre-push, nor any.github/workflows/*.ymlfile referencesrustup updateor pins a specific toolchain version — rustup readsrust-toolchain.tomlautomatically on everycargoinvocation, so the single-file change is sufficient.Benefits
digest pins, package-manager lockfiles)
Breaking Changes
Deployment Notes
Checklist