CI: one integration-test binary per crate, ci-test profile, mold #18
Loading…
Reference in a new issue
No description provided.
Delete branch "faster-tests"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The Nix
testcheck spent 30+ min compiling before any test ran (e.g. graph 582). Measured on ares (16 cores):cargo test --release --no-runfor the workspace crates: 1402 CPU-s, almost all from 27 separate integration-test binaries (~40–56 s each), each re-monomorphizing and optimizing axum/tokio/sqlite at opt-level 3.Changes:
kb-control-plane(19 files +common) andkb-cli(8 files) tests move totests/it/as modules of one binary per crate. There's no env/cwd mutation or fixed ports, so running them concurrently in one process is safe.common's blanketdead_codeallow is gone because nothing is unused now.[profile.ci-test](dev, line-tables-only debug info, deps at opt-level 2). Thetestcheck builds with it from a newtest-depsderivation, which, likeworkspace-deps, only rebuilds when Cargo.lock changes.stdenvAdapters.useMoldLinker). This is Nix only: ares has no mold, so there's no.cargo/config.toml.This is a one-off cache miss: mold changes the stdenv, so
workspace-depsrebuilds once.Verified locally:
cargo clippy --workspace --all-targets -D warningsis clean, andnix build .#ci.build .#ci.clippy .#ci.test-depspasses. The fullci.testrun is left to CI on this PR.🤖 Generated with Claude Code
@krisbuild r+
@krisbuild p=10
Removed from the merge queue: the pull-request head changed.
Merged main (#11 landed after this branched) and moved #11's new
tests/agent_routes.rsintotests/it/: left at the top level it became its own test target whosemod common;no longer resolves, so the merge candidate would not have compiled.@krisbuild r+ p=10
Merged as
623eac009c.