Codex working notes for this repo. Start with CLAUDE.md for the full project guide.
- Always run Rust tooling through
soldroruv run soldr. - Never run bare
cargo,rustc,rustfmt,clippy-driver,python, orpip. - Approved Rust forms in this repo are:
soldr cargo ...soldr rustc ...soldr rustfmt ...uv run soldr cargo ...uv run soldr rustc ...uv run soldr rustfmt ...
- Repo hooks enforce this.
- soldr resolves each tool via
rustup whichso the rustup-managed toolchain is always used instead of a stale system or Chocolatey install. uv run soldr ...works becauseci/dev-toolsinstallssoldrinto the repo-local uv environment.- The normal Cargo path is
soldr cargo ..., so repo Rust builds use soldr's managed zccache path by default; do not add repo-specificRUSTC_WRAPPERwiring for standard builds. - If you bypass them, you can hit wrong-toolchain errors.
uv run soldr cargo check --workspace --all-targets
uv run soldr cargo test -p fbuild-build -- --ignored
uv run soldr cargo clippy --workspace --all-targets -- -D warnings
uv run soldr cargo fmt --all
soldr cargo check --workspace --all-targets
soldr cargo test -p fbuild-build -- --ignored
soldr cargo clippy --workspace --all-targets -- -D warnings
soldr rustfmt --check crates/fbuild-build/src/compiler.rs
uv run test
uv run test --full
uv run test -p fbuild-build -- some_test_nameuv run python ci/zccache_setup.pyThis configures rustc-wrapper = "zccache" for local wrapper-mode experiments. Standard builds should use soldr or uv run soldr above.
- Use
uv run soldr ...whensoldris not on PATH but the repo-local uv environment is available.
- First check whether you used one of the approved wrapper forms above.
- If not, rerun it the required way before debugging anything else.
- If the pinned toolchain is missing, run
./installviauv run --script install. Read CLAUDE.md for repo instructions.