V2/ue/Tools/plan-v2-rust-crate-schedule.py turns local Cargo package manifests
into a bounded parallel compile plan. It is intentionally independent from Cargo
execution so CI can inspect the graph, publish the schedule, and use the same
plan with sccache-backed workers.
The scheduler:
- parses
Cargo.tomlpackage manifests with the standard-library TOML parser; - reads
dependencies,dev-dependencies, andbuild-dependencies; - links local crates through explicit
pathdependencies or workspace package names; - rejects dependency cycles;
- prioritizes ready crates by critical-path length, then stable crate name;
- emits batches capped by
defaultMaxWorkers.
The release evidence is $(ArchiveRoot)/Rust/crate-schedule-plan.json. The
Horde job gates require a generated schedule, zero dependency cycles, and at
least 70 percent worker utilization on scheduled waves through
rust-crate-schedule-worker-utilization.