cargo-rail v0.25.0
Cargo-Rail v0.25.0
Cargo-Rail 0.25.0 makes native compiler reuse exact across checkout and target roots, gives CI stricter planning
selectors, and extends release transactions to standalone Cargo lockfiles.
Compiler reuse and remote cache
- Root-portable native identity now tracks compiler-selected repository files by exact path, type, size, content, and
executable mode. Same-size edits miss correctly, while eligible results can move across checkout roots and external
CARGO_TARGET_DIRlocations. - Native cache status schema 14 preserves bounded failure-reason counters independently of its event ledger and
reports the fixed 64 restore-lock shards and staging residue needed to diagnose contention safely. cargo rail cache probeauthenticates against S3, Cloudflare R2, or Azure and validates the exact protocol marker
without disclosing the URL, object names, credentials, or local paths.- The remote object contract advances to
native-v6; oldernative-v5objects remain unreachable. Unsupported or
unverifiable work still executes the normal compiler path. - Rustc's boolean
linker-plugin-ltospellings are supported. Explicit plugin paths remain a deliberate bypass.
Planning and CI
- Variant catalog v2 gives deliverables typed Cargo roots and external paths. Any required input that no selected row
attributes widens the decision to every row instead of manufacturing a false skip. - Runtime artifacts are separate named Cargo work with bounded one-hop prerequisites, so tests receive the binaries
or libraries they need without turning planning into a command graph. - Strict consumers can distinguish skipped, workspace-wide, and package-scoped work and can extract package names
only from exact package scope. - Cargo-Rail's own workflows now dogfood source-built planning, dependency policy, caching, Surface, and exact-SHA
release archive reuse.
Surface and native delivery
- Surface report v3 separates raw compiler observations from merged declarations, reports per-reason impact with
bounded examples, and runs additional counterfactual graph work only forsurface --explain. - Compiler fact protocol v4 uses rustc's complete definition-path identity and rejects incompatible facts.
- Both Linux musl archives now carry authenticated Surface authority, including stable and dated-nightly source
fallback qualification and native loader proof.
Release transactions
- Release plan and state v5 can compute, bind, write, and recover exact post-release
Cargo.lockfiles for declared
standalone Cargo manifests. The operation remains a Cargo-only projection, not a general command hook. - The companion Action v8.1.0 defaults to Cargo-Rail 0.25.0 and adds typed cache root portability plus an optional
authenticated strict probe with redacted readiness outputs.
Contract versions
| Contract | Version in this release |
|---|---|
| Plan | v8, with variant catalog v2 and stricter projections |
| Native cache status | 14 |
| Remote native objects | native-v6 |
| Surface report / compiler facts | v3 / v4 |
| Release plan and transaction state | v5 |