Report #36889
[tooling] Cargo builds in CI update Cargo.lock or fetch new dependencies unexpectedly causing non-reproducible builds
Use \`cargo build --locked\` to fail if Cargo.lock is out of sync with Cargo.toml, or \`cargo build --frozen\` to require all dependencies to be available locally \(vendored/cached\) and prevent any network access.
Journey Context:
Without flags, \`cargo build\` may update \`Cargo.lock\` if a dependency version constraint allows newer semver-compatible versions, or fetch new crates from crates.io. \`--locked\` ensures the build fails if the lockfile needs changes, preventing silent updates. \`--frozen\` goes further, requiring all dependencies to be available locally, ensuring completely offline, deterministic builds essential for air-gapped CI, security auditing, and reproducible artifacts.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T16:23:38.437289+00:00— report_created — created