chore: reduce CI flakiness across webkit/macOS, ubuntu, windows#1914
Merged
yury-s merged 1 commit intomicrosoft:mainfrom May 1, 2026
Merged
chore: reduce CI flakiness across webkit/macOS, ubuntu, windows#1914yury-s merged 1 commit intomicrosoft:mainfrom
yury-s merged 1 commit intomicrosoft:mainfrom
Conversation
Three independent fixes for recurring CI failures on main: - test.yml: run the webkit matrix on macos-15-xlarge instead of macos-latest. macos-latest is the free 3 vCPU / 7 GB M1 runner; the webkit suite has been crashing window.open() / popup tests on it every push run. Upstream's webkit matrix has always used xlarge (tests_secondary.yml). Other browsers stay on macos-latest. - TestRouteWebSocket: drop the 'error' event listener in setupWS. WebKit fires a spurious 'error' before 'close' on non-normal closures (e.g. 1008), which intermittently failed shouldWorkWithTextMessage with [open, message, error, close] vs the expected [open, message, close]. The Java port has no tests that assert on 'error'. - download_driver.sh: pass --retry 5 --retry-delay 2 -fL to curl, fixing the windows driver download that occasionally errors with 'curl: (56) schannel: server closed abruptly'. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
pavelfeldman
approved these changes
May 1, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Three independent fixes for the most common failure modes of the
Build & Testworkflow onmain:.github/workflows/test.yml— webkit matrix now runs onmacos-15-xlarge(paid M1 Pro, 6 vCPU / 14 GB) instead ofmacos-latest(free M1, 3 vCPU / 7 GB). Every recent push run faileddev (macos-latest, webkit)deterministically — the first failure each run is a popup-related test (window.open(...),waitForPopup) crashing the WebKit process and cascadingTargetClosedErrorinto the rest of the class. Upstream's webkit matrix has always used xlarge (tests_secondary.yml); commitmicrosoft/playwright@6fc20c3c1("devops: bump macos bots") only bumped the version, never the size. Chromium and firefox keepmacos-latest.TestRouteWebSocket.setupWS— drop the'error'event listener. WebKit fires a spuriouserrorbeforecloseon non-normal closures (e.g. 1008), intermittently failingshouldWorkWithTextMessageondev (ubuntu-latest, webkit)with[open, message, error, close]instead of the expected[open, message, close]. The Java port has no tests that assert'error'appears in the log.scripts/download_driver.sh— pass--retry 5 --retry-delay 2 -fLtocurl. Recentdev (windows-latest, firefox)runs failed at the driver-download step withcurl: (56) schannel: server closed abruptly (missing close_notify). wget already retries 20 times by default, so the wget branch is unchanged.Notes
dev (macos-latest, webkit)→dev (macos-15-xlarge, webkit). If any branch protection rules / required-checks reference the old name, they need updating.--retry 5.