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
{{ message }}
Repository navigation
[Epic-Ideas-from-Alex] Threading-model rewrite: one dispatcher, cancellation everywhere, deterministic dispose #3446
No sync-over-async anywhere in the library (Locator.ToString, the adapters' ProcessExit).
A concurrency test suite (parallel WhenAll calls, connection kill mid-flight, events delivered during subscription) run under stress in CI.
Example
usingvarcts=newCancellationTokenSource(TimeSpan.FromSeconds(10));awaitpage.GetByRole(AriaRole.Button,new(){Name="Pay"}).ClickAsync(cancellationToken:cts.Token);awaitforeach(varreqinpage.RequestsAsync(cts.Token)){/* no lost events */}
Motivation
Most recent correctness bugs in this repo are races or shutdown hangs, fixed one at a time. They are also the hardest to reproduce, and the most damaging in large parallel suites and on the Playwright Service.
A deliberate model, documented and stress-tested, removes the whole class instead of patching symptoms. It's also the foundation the other .NET-idiomatic features need (IAsyncEnumerable events, cancellation).
Activity