From 3a02fc8369e2367e38e791e9f2ca488f7823384b Mon Sep 17 00:00:00 2001 From: Erik Date: Wed, 19 Aug 2026 11:05:16 +0200 Subject: [PATCH] ci: cap xUnit parallelism on the constrained Linux runner FakeAceTransportTests.PausedSelector_SeededDroppedServerReady_RecoversOnIdle Sweep failed in CI after 37 s while passing 5/5 in ~350 ms in isolation on the same machine: under full-assembly parallel load on a 6-core container its 2 s real-time waits get starved. The test is timing-sensitive, not broken, so cap the runner rather than edit Campaign N transport code. --- .gitea/workflows/ci.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 352332eb..2208f27c 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -75,8 +75,15 @@ jobs: tests/AcDream.Launcher.Core.Tests \ tests/AcDream.UI.Abstractions.Tests ; do echo "::group::$p" + # MaxParallelThreads is capped because this runner is a small + # container. Under full-assembly parallel load + # FakeAceTransportTests.PausedSelector_SeededDroppedServerReady_ + # RecoversOnIdleSweep took 37 s and missed its 2 s real-time wait, + # while passing 5/5 in ~350 ms in isolation. Timing-sensitive, not + # broken: starve it less rather than edit Campaign N transport code. dotnet test "$p" -c Release --nologo \ - --filter 'Lane!=InstalledDat&Lane!=PreparedPackage&Lane!=Live&Lane!=Manual&Lane!=Windows&Lane!=SystemFont&Purpose!=Diagnostic&Status!=KnownFailure' + --filter 'Lane!=InstalledDat&Lane!=PreparedPackage&Lane!=Live&Lane!=Manual&Lane!=Windows&Lane!=SystemFont&Purpose!=Diagnostic&Status!=KnownFailure' \ + -- xUnit.MaxParallelThreads=2 echo "::endgroup::" done