You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Surfaced by #222/#223 (2026-07-12): the first-ever native Windows execution of netbat's lib tests — a local run of the new test-docs lane — found drain_budget_bounds_one_flood_pass failing on Windows because it assumed Linux-sized kernel socket buffers (fixed in #223). The failure had been invisible for the test's entire life.
The gap
cargo xtask ci-windows-surface (commands/ci.rs) runs run_nextest_ci(["--all-features"])bare — no --workspace — so nextest covers only default-members (crates/core). The family crates (syncbat, netbat, hostbat, bvisor, macros, tools) get checked and clippy'd on Windows (checks always did; clippy since #221) but their tests never run there. Any family-crate test or code path with a host-environment assumption (socket buffers, path semantics, file locking, timing) is unverdicted on Windows — not green, not red, just absent.
This is the third instance of the same blind-spot class closed this cycle:
The comment on ci_fast_test() records why bare nextest is a known trap: the same default-members hole previously let an integrity self-test fixture rot on Linux until --workspace was added to the fast lane.
Cost: the Windows lane is label-gated (run-windows / run-heavy-ci / proof=windows), so wider test coverage there costs nothing on default PRs.
The Windows surface runs family-crate tests (e.g. --workspace on its nextest, or an explicit family loop mirroring run_family_tests()), with any genuinely Linux-only tests handled by explicit, documented cfg — not silent exclusion.
Context
Surfaced by #222/#223 (2026-07-12): the first-ever native Windows execution of netbat's lib tests — a local run of the new
test-docslane — founddrain_budget_bounds_one_flood_passfailing on Windows because it assumed Linux-sized kernel socket buffers (fixed in #223). The failure had been invisible for the test's entire life.The gap
cargo xtask ci-windows-surface(commands/ci.rs) runsrun_nextest_ci(["--all-features"])bare — no--workspace— so nextest covers onlydefault-members(crates/core). The family crates (syncbat,netbat,hostbat,bvisor, macros, tools) get checked and clippy'd on Windows (checks always did; clippy since #221) but their tests never run there. Any family-crate test or code path with a host-environment assumption (socket buffers, path semantics, file locking, timing) is unverdicted on Windows — not green, not red, just absent.This is the third instance of the same blind-spot class closed this cycle:
Notes / constraints
ci_fast_test()records why bare nextest is a known trap: the same default-members hole previously let an integrity self-test fixture rot on Linux until--workspacewas added to the fast lane.run-windows/run-heavy-ci/proof=windows), so wider test coverage there costs nothing on default PRs.Acceptance shape
--workspaceon its nextest, or an explicit family loop mirroringrun_family_tests()), with any genuinely Linux-only tests handled by explicit, documented cfg — not silent exclusion.ci-windows-surfacedescription stays accurate.Refs: #223 (the discovered instance), #221 (Windows clippy precedent), #211 (Windows fact-plane), issue #178 closing comment (blind-spot class record).