Commit: 2f26d91 · Finding: TEST-04
Problem
Every test in crates/actor/tests/performance.rs carries #[ignore] // Run explicitly via just test-actor-perf``. The crates/actor/src tree contains zero inline `#[test]` / `#[tokio::test]` items. CI default `cargo test` therefore exercises zero actor tests.
crates/actor implements the core supervision / mailbox / lifecycle runtime used by every other crate. "We have tests" is technically true but operationally false.
Fix
- Split
crates/actor/tests/performance.rs into crates/actor/tests/actor.rs (correctness cases without #[ignore]) and keep the remaining timing/benchmark cases gated.
- Add inline
#[tokio::test]s inside crates/actor/src for:
- Mailbox bounded capacity (backpressure on full channel)
- Panic propagation across
Handler boundaries
- Shutdown ordering (parent waits for children)
Broker delivery to multiple subscribers
- CI
cargo test -p willow-actor should run >10 tests by default after this change.
Obvious fix — structure is mechanical. Would be auto-PR'd.
Commit:
2f26d91· Finding:TEST-04Problem
Every test in
crates/actor/tests/performance.rscarries#[ignore] // Run explicitly viajust test-actor-perf``. Thecrates/actor/srctree contains zero inline `#[test]` / `#[tokio::test]` items. CI default `cargo test` therefore exercises zero actor tests.crates/actorimplements the core supervision / mailbox / lifecycle runtime used by every other crate. "We have tests" is technically true but operationally false.Fix
crates/actor/tests/performance.rsintocrates/actor/tests/actor.rs(correctness cases without#[ignore]) and keep the remaining timing/benchmark cases gated.#[tokio::test]s insidecrates/actor/srcfor:HandlerboundariesBrokerdelivery to multiple subscriberscargo test -p willow-actorshould run >10 tests by default after this change.Obvious fix — structure is mechanical. Would be auto-PR'd.