Repository navigation
fix(ci): install pinned Rust in fresh isolated tool homes - #112
Merged
Merged
Conversation
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configuration
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
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.
The Rust and research-book jobs fail before repository compilation on runner image
ubuntu24/20261012.334.1: their first loggedrustupcalls recover a partial toolchain and encounterbin/cargo-clippyconflicts. The book job already declared temporary homes; the logs do not establish why partial state was reused. Observed jobs: PR #107 job116742623356, PR #108 job116746445138.Use one shared setup helper in the two affected workflows. It exclusively creates new tool homes under
RUNNER_TEMP, verifies pinned official rustup-init 1.28.2 bytes, and invokes only the new absolute installer/proxies with the repository's Rust 1.92.0, minimal profile, rustfmt and Clippy. It checks installed components and versions before publishing GitHub environment/PATH entries. No existing home, toolchain or cache is copied, repaired or deleted. Existing qualification commands, feature matrix, strict lints and thresholds remain unchanged. The executable-contracts job runs the setup's normal and optimized-Python contracts before invoking setup.Validation:
python3 -O. They cover polluted inherited homes/PATH/selectors, exclusive fresh homes, checksum and size refusal, failed installation/missing components/wrong version, and correct workflow integration.ded5c06cf), cargo 1.92.0, rustfmt 1.8.0-stable and Clippy 0.1.92. Those fresh tools passedcargo +1.92.0 fmt --all --check, strict all-target Clippy andcargo +1.92.0 test --locked --offlineon a tiny dependency-free standalone crate (zero unit tests; this verifies tool execution/compilation, not Rheon behavior). No Worker sources or shared Cargo targets were used.git diff --checkpass.Official bootstrap: manual-install/versioned archive documentation, pinned archive checksum. Expected SHA-256:
20a06e644b0d9bd2fbdbfd52d42540bdde820ea7df86e92e533c073da0cdd43c.The first hosted run passed the new setup and bootstrap contracts, then exposed a historical CI-budget guard still requiring the replaced ambient setup bytes. The follow-up requires the complete frozen historical block, substitutes only the exact reviewed helper step and requires both bootstrap checks at the approved position. All previous numerical methods, workloads, action pins, matrix, budgets and final status gates are preserved. Independent review and actual targeted guard3+3 optimized tests (21 rejection controls each), plus bootstrap7+7 optimized tests passed. Fresh hosted Rheon qualification remains pending on head
ad8564c452d29d1ab2d858e08fd6fa6079ba3972; the earlier 195-entry lifecycle run had one error and27 skips and is not reported as passing. This change makes no hermeticity, reproducibility or measured-model claim; other Rust workflows retain their current setup and are outside this repair.