Skip to content

feat(webkit): roll to r2339#41984

Merged
yury-s merged 1 commit into
microsoft:mainfrom
yury-s:fix-18235
Jul 24, 2026
Merged

feat(webkit): roll to r2339#41984
yury-s merged 1 commit into
microsoft:mainfrom
yury-s:fix-18235

Conversation

@yury-s

@yury-s yury-s commented Jul 24, 2026

Copy link
Copy Markdown
Member

Summary

  • Roll WebKit to r2339, which includes the fix for navigator.storage.getDirectory() in persistent contexts
  • Add a persistent context test for storage.getDirectory() and unify expectations in the existing default context test

Fixes #18235

This roll includes the fix for navigator.storage.getDirectory() in
persistent contexts. Add a test for it and unify expectations in the
existing default context test across platforms.

Fixes microsoft#18235
@github-actions

Copy link
Copy Markdown
Contributor

Test results for "MCP"

1 failed
❌ [chrome] › mcp/annotate.spec.ts:269 › should start dashboard and annotate when no dashboard is running @mcp-windows-latest-chrome

7807 passed, 1266 skipped


Merge workflow run.

@github-actions

Copy link
Copy Markdown
Contributor

Test results for "tests 1"

1 failed
❌ [playwright-test] › playwright.spec.ts:365 › should report error from beforeAll timeout @ubuntu-latest-node24

9 flaky ⚠️ [chromium-library] › library/chromium/chromium.spec.ts:434 › should produce network events, routing, and annotations for Service Worker (advanced) `@frozen-time-library-chromium-linux`
⚠️ [chromium-library] › library/chromium/chromium.spec.ts:371 › should produce network events, routing, and annotations for Service Worker `@chromium-ubuntu-22.04-arm-node20`
⚠️ [chromium-library] › library/chromium/oopif.spec.ts:282 › should click `@chromium-ubuntu-22.04-arm-node20`
⚠️ [chromium-library] › library/video.spec.ts:294 › screencast › should capture navigation `@realtime-time-library-chromium-linux`
⚠️ [chromium-library] › library/video.spec.ts:495 › screencast › should capture static page in persistent context @smoke `@chromium-ubuntu-22.04-node20`
⚠️ [chromium-library] › library/popup.spec.ts:260 › should not throw when click closes popup `@chromium-ubuntu-22.04-node22`
⚠️ [chromium-library] › library/video.spec.ts:356 › screencast › should work for popups `@chromium-ubuntu-22.04-node22`
⚠️ [chromium-library] › library/video.spec.ts:495 › screencast › should capture static page in persistent context @smoke `@chromium-ubuntu-22.04-node22`
⚠️ [firefox-page] › page/page-goto.spec.ts:81 › should work with Cross-Origin-Opener-Policy `@firefox-ubuntu-22.04-node20`

50709 passed, 1190 skipped


Merge workflow run.

@github-actions

Copy link
Copy Markdown
Contributor

Hi, I'm the Playwright bot and I took a first look at the CI failures.

🟢 The one failure is a pre-existing flake — this PR is clear

This is a WebKit roll (r2339) touching browsers.json and two WebKit-facing tests. The only failure, mcp/annotate.spec.ts:269 on Windows Chrome, has nothing to do with that, and it's failed the same way on other PRs and a push build. Nothing here looks caused by this PR.

Details

Pre-existing flake / infra

  • [chrome] › mcp/annotate.spec.ts:269 › should start dashboard and annotate when no dashboard is running (@mcp-windows-latest-chrome) — pre-existing flake. Across the test-results DB this test is failed 4 of 5102 runs (~0.08%), passed the other 5098, and the failures are spread across SHAs this PR can't be responsible for:

    Same signature every time: Windows + Chrome/Chromium MCP dashboard startup. This PR only bumps the WebKit revision and adds/adjusts WebKit storage.getDirectory() tests, none of which exercise the MCP dashboard flow.

Triaged by the Playwright bot - agent run

@github-actions

Copy link
Copy Markdown
Contributor

Hi, I'm the Playwright bot and I took a first look at the CI failures.

🟢 Both failures are pre-existing flakes — this PR is clear

This is a WebKit roll (r2339) touching browsers.json and two WebKit-facing tests. Neither failure is on WebKit, and neither is reachable from the diff. One is a known Windows-Chrome MCP flake seen on other PRs; the other is a chromium test-runner test that passed on 7 other bots on this very commit. Nothing here looks caused by this PR.

Details

The PR only bumps the WebKit revision and adds/adjusts WebKit storage.getDirectory() tests. Neither failing test exercises anything in that path.

Pre-existing flake / infra

  • [chrome] › mcp/annotate.spec.ts:269 › should start dashboard and annotate when no dashboard is running (@mcp-windows-latest-chrome) — pre-existing flake, ~4 failures in ~2450 chrome/chromium runs, all on Windows and spread across SHAs this PR can't be responsible for:

    Same signature every time: Windows MCP dashboard startup. The WebKit roll doesn't touch the MCP dashboard flow.

  • [playwright-test] › playwright.spec.ts:365 › should report error from beforeAll timeout (@ubuntu-latest-node24) — flake. In the same run (30128336875, sha e17cb8b8) this exact test passed on ubuntu-latest-node20, node22, node26, macos-latest-node22 and windows-latest-node22, and failed only on node24 — non-deterministic on identical code. It's a chromium test-runner test, so a WebKit-only revision bump can't selectively break one Node version. The assertion that failed was expect(output).toContain('waiting for') against a hard 2000ms beforeAll timeout — a race where the timeout fires before the pending action ("waiting for …") is captured. Across the results DB it's failed 1 of 3088 runs.

Triaged by the Playwright bot - agent run

@yury-s
yury-s merged commit 3827650 into microsoft:main Jul 24, 2026
74 of 79 checks passed
@yury-s
yury-s deleted the fix-18235 branch July 24, 2026 22:26
@github-actions

Copy link
Copy Markdown
Contributor

Test results for "tests 2"

5 failed
❌ [chromium-library] › library/debug-controller.spec.ts:176 › should record @msedge-dev-windows-latest
❌ [chromium-library] › library/debug-controller.spec.ts:211 › should record expect signal @msedge-dev-windows-latest
❌ [chromium-library] › library/debug-controller.spec.ts:176 › should record @msedge-windows-latest
❌ [chromium-library] › library/debug-controller.spec.ts:211 › should record expect signal @msedge-windows-latest
❌ [chromium-library] › library/browsertype-connect.spec.ts:189 › launchServer › should ignore page.pause when headed @chromium-macos-14-xlarge

31 flaky ⚠️ [electron-api] › electron/electron-app.spec.ts:114 › should dispatch ready event `@electron-macos-latest`
⚠️ [chromium-library] › library/chromium/extensions.spec.ts:45 › MV3 › should support service worker stop and restart lifecycle `@msedge-windows-latest`
⚠️ [chromium-library] › library/har-websocket.spec.ts:239 › should attach websocket messages for a still open websocket after stopping `@chromium-windows-latest`
⚠️ [chromium-library] › library/video.spec.ts:736 › screencast › should work with video+trace `@chromium-windows-latest`
⚠️ [chromium-library] › library/browsertype-connect.spec.ts:189 › launchServer › should ignore page.pause when headed `@chromium-macos-15-large`
⚠️ [chromium-library] › library/chromium/chromium.spec.ts:299 › should report intercepted service worker requests in HAR `@chromium-macos-15-large`
⚠️ [chromium-library] › library/chromium/chromium.spec.ts:434 › should produce network events, routing, and annotations for Service Worker (advanced) `@chromium-macos-14-xlarge`
⚠️ [chromium-library] › library/har.spec.ts:109 › should populate entry startedDateTime from the browser `@chromium-macos-14-xlarge`
⚠️ [chromium-library] › library/browsertype-connect.spec.ts:189 › launchServer › should ignore page.pause when headed `@chromium-macos-15-xlarge`
⚠️ [chromium-library] › library/video.spec.ts:664 › screencast › should capture full viewport `@chromium-macos-15-xlarge`
⚠️ [chromium-library] › library/video.spec.ts:736 › screencast › should work with video+trace `@chromium-macos-15-xlarge`
⚠️ [chromium-library] › library/debug-controller.spec.ts:176 › should record `@chrome-windows-latest`
⚠️ [chromium-library] › library/browsertype-connect.spec.ts:189 › launchServer › should ignore page.pause when headed `@chrome-macos-latest`
⚠️ [chromium-library] › library/browsertype-connect.spec.ts:389 › launchServer › should reject navigation when browser closes `@chrome-macos-latest`
⚠️ [chromium-library] › library/chromium/chromium.spec.ts:299 › should report intercepted service worker requests in HAR `@chrome-macos-latest`
⚠️ [chromium-library] › library/inspector/cli-codegen-2.spec.ts:202 › cli codegen › should upload a file via hidden input triggered by button `@chrome-macos-latest`
⚠️ [firefox-page] › page/page-event-request.spec.ts:181 › should return response body when Cross-Origin-Opener-Policy is set `@tracing-firefox`
⚠️ [firefox-library] › library/browsercontext-reuse.spec.ts:326 › reuse connect › should work with clock emulation `@firefox-windows-latest`
⚠️ [firefox-library] › library/client-certificates.spec.ts:909 › browser › persistentContext › should pass with matching certificates `@firefox-windows-latest`
⚠️ [firefox-library] › library/defaultbrowsercontext-1.spec.ts:89 › should support viewport option `@firefox-windows-latest`
⚠️ [firefox-library] › library/inspector/cli-codegen-1.spec.ts:677 › cli codegen › should uncheck `@firefox-windows-latest`
⚠️ [firefox-library] › library/proxy.spec.ts:29 › should use proxy @smoke `@firefox-windows-latest`
⚠️ [firefox-library] › library/proxy.spec.ts:61 › should work with IP:PORT notion `@firefox-windows-latest`
⚠️ [firefox-library] › library/proxy.spec.ts:125 › should allow bypassing localhost requests `@firefox-windows-latest`
⚠️ [firefox-page] › page/page-goto.spec.ts:81 › should work with Cross-Origin-Opener-Policy `@firefox-windows-latest`
⚠️ [webkit-library] › library/playwright-client.spec.ts:26 › should connect from a page and drive the same browser `@tracing-webkit`
⚠️ [webkit-library] › library/trace-viewer.spec.ts:1922 › canvas disabled title `@webkit-macos-15-xlarge`
⚠️ [webkit-library] › library/tracing.spec.ts:429 › should produce screencast frames fit `@webkit-macos-15-xlarge`
⚠️ [webkit-page] › page/page-request-fallback.spec.ts:239 › post data › should amend binary post data `@webkit-macos-15-large`
⚠️ [webkit-page] › page/wheel.spec.ts:154 › should scroll horizontally `@webkit-macos-15-large`
⚠️ [android-page] › page/page-request-fulfill.spec.ts:81 › should fulfill with unuassigned status codes

108735 passed, 4597 skipped


Merge workflow run.

@github-actions

Copy link
Copy Markdown
Contributor

Hi, I'm the Playwright bot and I took a first look at the CI failures.

🟢 Both failures are pre-existing Chromium-family flakes — this PR is clear

This is a WebKit roll (r2339) touching browsers.json and two WebKit-facing tests. Neither failure is on WebKit, and neither is reachable from the diff: one is a recurring debug-controller flake on Edge/Windows, the other a long-standing browsertype-connect flake on macOS Chromium that also flaked twice more in this very run. Nothing here looks caused by this PR.

Details

The PR only bumps the WebKit revision and adds/adjusts WebKit storage.getDirectory() tests. Both failing tests are chromium-library, run on Chromium/Edge bots the WebKit roll doesn't touch.

Pre-existing flake / infra

  • [chromium-library] › library/debug-controller.spec.ts:176 › should record and :211 › should record expect signal (@msedge-windows-latest, @msedge-dev-windows-latest) — recurring flake. Across the results DB should record failed 43 of 7010 runs and should record expect signal 37 of 5518 runs, clustered on the Edge/Windows bots and spread across SHAs this PR can't be responsible for — e.g. PR feat(webkit): roll to r2337 #41971 (run 30087527278), PR feat(firefox): roll to r1539 #41970 (run 30088593278), and push builds dea59db2 (30087062553), 824f55f3 (30096158712), e0e86701 (30106394430). Same signature every time: both tests failing together on msedge-windows / msedge-dev-windows.

  • [chromium-library] › library/browsertype-connect.spec.ts:189 › launchServer › should ignore page.pause when headed (@chromium-macos-14-xlarge) — well-established flake, 31 of 7031 runs, all on macOS Chromium bots and spread across unrelated PRs and push builds (e.g. PR feat(webkit): roll to r2326 #41670, feat(webkit): roll to r2328 #41722, feat(webkit): roll to r2338 #41973, plus many push SHAs). It flaked again in this same run on chromium-macos-15-large and chromium-macos-15-xlarge (passed on retry), and failed on the very next push build 484274c4 too — non-deterministic on code the WebKit roll doesn't touch.

Triaged by the Playwright bot - agent run

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[BUG] navigator.storage.getDirectory() fails in webkit

2 participants