Fighting Game · Guides & deep dives

V2 Rust Crate Scheduling

A guides & deep dives document in the Fighting Game library.

0sections1 minread

On this page

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.toml package manifests with the standard-library TOML parser;
  • reads dependencies, dev-dependencies, and build-dependencies;
  • links local crates through explicit path dependencies 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.