Build & Test

Rust stable. Workspace resolver v2.

Core Commands

cargo check --workspace --all-features
cargo test --workspace
cargo test --workspace --all-features
cargo test --workspace -- --quiet

Single crate:

cargo test -p engine_core
cargo test -p ecs
cargo test -p scheduler
cargo test -p host

With specific features:

cargo test -p host --features "serde scripting"
cargo test -p audio --features "serde debug-snapshot"
cargo test -p render --features "gpu"

Clippy:

cargo clippy -p host -- -W clippy::all
cargo clippy --workspace --all-features

Headless

gpu is default-on in host/Cargo.toml. Disable it and windowing plus wgpu disappear, but headless modes still work.

cargo build -p host --no-default-features
cargo test -p host --no-default-features

Feature Flags

The main feature families are serde, instrumentation, GPU/runtime toggles, hot-reload wiring, and optional tooling like scripting, gamepad, profiling, or editor UI. The uploaded page already lays these out crate by crate for engine_core, ecs, scheduler, render, assets, io, audio, and host.

Test Counts

Approximate March 2026 total is ~2,656 tests across the workspace. Highlights include ~425 in ecs, ~268 in io, ~234 in assets, ~212 in audio, and ~137 in scheduler. Host lands around 134–156 depending on features.

PropTest and Benchmarks

ecs and audio both have determinism-focused proptest suites.

cargo test -p ecs proptest_determinism
cargo test -p audio proptest_determinism

Regression files live at:

ecs/tests/proptest_determinism.proptest-regressions
audio/tests/proptest_determinism.proptest-regressions

Do not delete them. Audio also has a Criterion benchmark suite at audio/benches/audio_bench.rs, run with cargo bench -p audio. Reports land in audio/target/criterion/.

Directory Layout and Pre-Push

The workspace is split across Tier 0 through Tier 3 crates plus editor modules under modules/. There is also a cargo editor alias defined in .cargo/config.toml. Before pushing, run the full workspace check, quiet test run, and host clippy audit.

cargo check --workspace --all-features
cargo test --workspace -- --quiet
cargo clippy -p host -- -W clippy::all