openclaw/apps
Peter Steinberger 83a974025c
fix(macos): remaining native test suites flake on busy runners when wait deadlines expire (#162453)
* test(macos): wait on signals in the remaining native suites

Positive-outcome waits outside the suites #161616 migrated still failed on
saturated runners when private 1-5 s deadlines expired before the awaited
work ran (StatusMenuSummariesTests:338, GatewayConnectionMediaAuthorityTests:129).

Move them onto TestWait: fixture signals, Observation for tracked state,
gates and streams, otherwise TestWait.state. Shared owners (TestProcessSupport,
AppKit window transitions, Web Chat lifetime) lose their deadlines once, and
TestWait gains AsyncTestGate.wait(_:) and TestWait.value(of:_:) so suites stop
carrying private copies. Every affected suite declares .testWaitLimit.

Bounded absence windows, timeout-subject tests, and producer hold semantics
are unchanged. DashboardHTTPFixture's 5 s client bound no longer closes a
request a test hook is holding.

* test(macos): let Codex shutdown proof wait under the suite limit

The force-kill test guarded `client.shutdown()` with a 10 s watchdog. On a
saturated runner the watchdog fired first, SIGKILLed the child without
reaping it, and the following kill(pid, 0) checks failed (2 of 4 loaded
full-suite runs in proof run 36795058911). Production escalates after a
1.5 s graceful wait; the bound was a hang guard, not the subject.

Join shutdown under .testWaitLimit instead, killing the children only if
the limit cancels the test.

* test(macos): order the request timeout before its late send failure

The double-resume regression test raced a 10 ms request timeout against a send hook that failed after 100 ms. On a
loaded runner the send failure disconnected first and the request failed with the URLError (CI on #162453). The send
hook now fails only after the test has observed the timeout.
2026-10-01 14:16:30 +00:00
..
.i18n chore(i18n): refresh native locales (#162630) 2026-10-01 11:06:04 +00:00
android chore(android): update AndroidX core and Wear Compose (#162697) 2026-10-01 20:12:13 +07:00
ios chore(ui): update Mermaid to 12.0.0 (#162618) 2026-10-01 19:22:10 +07:00
linux fix: dashboards require approval after native app authentication (#159860) 2026-09-28 16:16:53 -06:00
macos fix(macos): remaining native test suites flake on busy runners when wait deadlines expire (#162453) 2026-10-01 14:16:30 +00:00
macos-mlx-tts chore(deps): refresh dependencies through September 19 cutoff (#159401) 2026-09-27 19:33:08 -07:00
shared chore(macos): update Swift Markdown to 0.9.0 (#162724) 2026-10-01 20:59:17 +07:00
swabble refactor(apple): deslop shared Swift packages second pass (#159386) 2026-09-27 14:35:55 +00:00