mirror of
https://github.com/jmcorgan/fips.git
synced 2026-07-30 11:36:15 +00:00
The UDP recv microbenchmark carried a bare #[ignore] while its sibling in the link module carries a self-describing one. Match it, so the reason appears wherever the test is listed rather than only in the doc comment. Record why [profile.ci] retries = 2 is not applied locally. The two gates disagree on purpose: the hosted runner retries a flaky test twice, the local sweep fails on the first failure. It exists for shared-runner packet loss, a property of that environment rather than of the code, and applying it locally would suppress a real local flake — a failure that only reproduces under load is a robustness bug to fix, not to retry past. Keeping the local sweep strict is what makes it the sharper gate. An undocumented asymmetry is indistinguishable from an oversight, which is why this is written down rather than left to be rediscovered. The cost is stated rather than hidden: a test that fails once and passes on retry is reported green with no separate signal, so a genuine intermittent failure can be absorbed. If that starts mattering the fix is to surface retried-but-passed tests, not to drop the retries. Quartet clean: fmt, build --workspace, clippy --all-targets -D warnings, and test --lib at 1376 passed / 0 failed / 7 ignored.
42 lines
1.9 KiB
TOML
42 lines
1.9 KiB
TOML
[profile.ci]
|
|
junit = { path = "junit.xml" }
|
|
# Synthetic node tests build 250-edge meshes with one-shot UDP
|
|
# handshakes; on shared CI runners the localhost stack still drops the
|
|
# occasional msg1 under burst load even with the per-edge repair loop.
|
|
# Allow a retry rather than failing the whole CI run on a single
|
|
# dropped packet.
|
|
#
|
|
# Deliberately scoped to [profile.ci] and NOT applied locally, which makes
|
|
# the two gates disagree: the hosted runner retries a flaky test twice, the
|
|
# local sweep fails on the first failure. The asymmetry is intended and this
|
|
# is the record of why, since an undocumented one is indistinguishable from
|
|
# an oversight.
|
|
#
|
|
# It is here for shared-runner packet loss, a property of the hosted
|
|
# environment and not of the code. Applying it locally would suppress a real
|
|
# local flake, and a failure that only reproduces under load is a robustness
|
|
# bug to fix rather than to retry past. Keeping the local sweep strict is
|
|
# what makes it the sharper of the two gates.
|
|
#
|
|
# The cost, stated rather than hidden: a test that fails once and passes on
|
|
# retry is reported green here with no separate signal, so a genuine
|
|
# intermittent failure can be absorbed. If that starts mattering, the fix is
|
|
# to surface retried-but-passed tests, not to drop the retries.
|
|
retries = 2
|
|
|
|
[test-groups]
|
|
node-synthetic = { max-threads = 1 }
|
|
|
|
# nextest runs each test in a separate process, so in-process Tokio mutexes
|
|
# can't serialize the synthetic localhost UDP node tests on CI. Those tests
|
|
# send one-shot handshakes without production reconnect timers; under runner
|
|
# load even small topologies drop the lone msg1. Group all node tests so
|
|
# they run mutually exclusive — slower CI, reliable assertions.
|
|
[[profile.default.overrides]]
|
|
filter = 'test(node::tests::)'
|
|
test-group = 'node-synthetic'
|
|
|
|
[[profile.ci.overrides]]
|
|
filter = 'test(node::tests::)'
|
|
test-group = 'node-synthetic'
|