Skip to content

feat(firefox): roll to r1546 - #42735

Merged
Devin Rousso (dcrousso) merged 1 commit into
mainfrom
roll-into-pw-firefox/1546
Sep 16, 2026
Merged

Devin Rousso (dcrousso) merged 1 commit into
mainfrom
roll-into-pw-firefox/1546

Conversation

@microsoft-playwright-automation

Copy link
Copy Markdown
Contributor

Browser build: https://github.com/microsoft/playwright-browsers/commit/bb2f129bd9071ced32760a9604730e80aeb56ee5. Build has full platform coverage - check that all tests pass there.

@github-actions

Copy link
Copy Markdown
Contributor

Test results for "tests 1"

1 failed
❌ [firefox-library] › library/browsercontext-storage-state.spec.ts:453 › should work when service worker is intefering and the origin is not open @firefox-ubuntu-22.04-node20

5 flaky ⚠️ [chromium-library] › library/video.spec.ts:736 › screencast › should work with video+trace `@realtime-time-library-chromium-linux`
⚠️ [chromium-library] › library/video.spec.ts:495 › screencast › should capture static page in persistent context Radoslav Kirilov (@smoke) `@chromium-ubuntu-22.04-node24`
⚠️ [chromium-library] › library/video.spec.ts:664 › screencast › should capture full viewport `@chromium-ubuntu-22.04-node24`
⚠️ [firefox-library] › library/browsercontext-cookies-third-party.spec.ts:257 › third party 'Partitioned;' cookies `@firefox-ubuntu-22.04-node20`
⚠️ [firefox-library] › library/browsercontext-cookies-third-party.spec.ts:470 › top level 'Partitioned;' cookie and same origin iframe `@firefox-ubuntu-22.04-node20`

51722 passed, 1247 skipped


Merge workflow run.

@github-actions

Copy link
Copy Markdown
Contributor

🟢 The one failure is pre-existing — this roll is clear

Hi, I'm the Playwright bot and I triaged the CI failure here.

browsercontext-storage-state.spec.ts:453 › should work when service worker is intefering and the origin is not open is red on firefox-library in 36 of 36 runs in the CI results DB — it has never passed on Firefox, including on main at this PR's base sha 9ae5377. Same red on unrelated PRs (#42734, #42728, #42718). Chromium (39/39) and WebKit (36/36) pass.

Details

Overall: 1 failed, 51722 passed. That single failure is a standing Firefox failure, not a regression from r1544 → r1546.

Pre-existing failure

Worth noting, not a blocker

This roll adds the juggler half of the fix — Network.setRequestInterception({ bypassServiceWorker }) in NetworkObserver.js/PageHandler.js — but no caller sends it: bypassServiceWorker doesn't appear anywhere in packages/playwright-core/src except the regenerated protocol.d.ts. So the test stays red until ffNetworkManager.setRequestInterception() passes the flag through. That's a follow-up on the Playwright side, not a reason to hold the roll.

Triaged by the Playwright bot - agent run

@github-actions

Copy link
Copy Markdown
Contributor

Test results for "MCP"

1 failed
❌ [firefox] › mcp/cli-session.spec.ts:54 › idle timeout shuts the session down @mcp-windows-latest-firefox

8563 passed, 1446 skipped


Merge workflow run.

@github-actions

Copy link
Copy Markdown
Contributor

🟢 The MCP failure is a known Windows/Firefox flake — this roll is clear

Hi, I'm the Playwright bot and I triaged the CI failure here.

mcp/cli-session.spec.ts:54 › idle timeout shuts the session down fails only on mcp-windows-latest-firefox, and it flips verdict there: 12 of 38 runs red, 26 green in the CI results DB — including a red on main at this PR's base sha 9ae5377 (run 35013175873) and on unrelated PRs #42696 and #42734. Every other bot is 0 failures out of ~40 runs, mcp-ubuntu-latest-firefox and mcp-macos-latest-firefox included.

Details

Overall: 1 failed, 8563 passed in the MCP report. It's a pre-existing flake, not a regression from r1544 → r1546.

Pre-existing flake

  • [firefox] › mcp/cli-session.spec.ts:54 › idle timeout shuts the session down @mcp-windows-latest-firefox — the session is still listed after the idle timeout should have torn it down:

    Expected substring: "(no browsers)"
    Received string:    "### Browsers
    - default:
      - status: open
      - browser-type: firefox
    ...
    Call Log:
    - Timeout 5000ms exceeded while waiting on the predicate
    

    That's a timing assertion on session teardown — 11 of the 12 failures share this exact message. It reproduces without this PR, so the roll isn't responsible. The Windows-only skew points at slower browser shutdown on that runner rather than anything in juggler; this roll touches NetworkObserver.js, content Runtime.js and PageHandler.js, none of which the MCP CLI session lifecycle exercises.

Earlier report

The "tests 1" report on this PR was triaged separately and also came back green — browsercontext-storage-state.spec.ts:453 is red on firefox-library in 36 of 36 runs, standing red since #42664.

Triaged by the Playwright bot - agent run

Triaged by the Playwright bot - agent run

@github-actions

Copy link
Copy Markdown
Contributor

Test results for "tests 2"

4 failed
❌ [firefox-library] › library/browsercontext-storage-state.spec.ts:453 › should work when service worker is intefering and the origin is not open @tracing-firefox
❌ [firefox-library] › library/browsercontext-storage-state.spec.ts:453 › should work when service worker is intefering and the origin is not open @firefox-macos-15-large
❌ [firefox-library] › library/browsercontext-storage-state.spec.ts:453 › should work when service worker is intefering and the origin is not open @firefox-windows-latest
❌ [firefox-library] › library/browsercontext-storage-state.spec.ts:453 › should work when service worker is intefering and the origin is not open @firefox-macos-15-xlarge

26 flaky ⚠️ [chromium-library] › library/chromium/chromium.spec.ts:179 › serviceWorker(), and fromServiceWorker() work `@chromium-macos-14-xlarge`
⚠️ [chromium-library] › library/chromium/oopif.spec.ts:179 › should take screenshot `@chromium-macos-14-xlarge`
⚠️ [chromium-library] › library/trace-viewer.spec.ts:1915 › should not leak recorders `@chromium-macos-15-xlarge`
⚠️ [chromium-library] › library/video.spec.ts:736 › screencast › should work with video+trace `@chromium-macos-15-xlarge`
⚠️ [chromium-library] › library/chromium/chromium.spec.ts:301 › should report intercepted service worker requests in HAR `@chrome-beta-ubuntu-22.04`
⚠️ [chromium-library] › library/popup.spec.ts:260 › should not throw when click closes popup `@chrome-beta-ubuntu-22.04`
⚠️ [chromium-library] › library/chromium/chromium.spec.ts:213 › should intercept service worker requests (main and within) `@chrome-macos-latest`
⚠️ [chromium-library] › library/chromium/chromium.spec.ts:301 › should report intercepted service worker requests in HAR `@chrome-macos-latest`
⚠️ [chromium-library] › library/selectors-register.spec.ts:55 › should support the world option with a main world selector engine `@chrome-macos-latest`
⚠️ [firefox-library] › library/browsercontext-cookies-third-party.spec.ts:257 › third party 'Partitioned;' cookies `@tracing-firefox`
⚠️ [firefox-library] › library/browsercontext-cookies-third-party.spec.ts:470 › top level 'Partitioned;' cookie and same origin iframe `@tracing-firefox`
⚠️ [firefox-library] › library/browsercontext-cookies-third-party.spec.ts:257 › third party 'Partitioned;' cookies `@firefox-macos-15-large`
⚠️ [firefox-library] › library/browsercontext-cookies-third-party.spec.ts:470 › top level 'Partitioned;' cookie and same origin iframe `@firefox-macos-15-large`
⚠️ [firefox-library] › library/inspector/cli-codegen-javascript.spec.ts:51 › should work with --http-credentials `@firefox-macos-15-large`
⚠️ [firefox-library] › library/trace-viewer.spec.ts:1915 › should not leak recorders `@firefox-macos-15-large`
⚠️ [firefox-page] › page/page-emulate-media.spec.ts:144 › should keep reduced motion and color emulation after reload `@firefox-macos-15-large`
⚠️ [firefox-library] › library/browsercontext-cookies-third-party.spec.ts:257 › third party 'Partitioned;' cookies `@firefox-windows-latest`
⚠️ [firefox-library] › library/browsercontext-cookies-third-party.spec.ts:470 › top level 'Partitioned;' cookie and same origin iframe `@firefox-windows-latest`
⚠️ [firefox-library] › library/browsercontext-cookies-third-party.spec.ts:257 › third party 'Partitioned;' cookies `@firefox-macos-15-xlarge`
⚠️ [firefox-library] › library/browsercontext-cookies-third-party.spec.ts:470 › top level 'Partitioned;' cookie and same origin iframe `@firefox-macos-15-xlarge`
⚠️ [firefox-library] › library/browsercontext-viewport.spec.ts:29 › should set the proper viewport size `@firefox-macos-15-xlarge`
⚠️ [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:1987 › canvas disabled title `@webkit-macos-15-xlarge`
⚠️ [webkit-library] › library/trace-viewer.spec.ts:2383 › shouldn't render not-blob trace received from message `@webkit-macos-15-xlarge`
⚠️ [webkit-library] › library/browsertype-connect.spec.ts:813 › launchServer › should upload a folder `@webkit-macos-15-large`
⚠️ [android-page] › page/locator-click.spec.ts:20 › should work Radoslav Kirilov (@smoke)

111377 passed, 4739 skipped


Merge workflow run.

@github-actions

Copy link
Copy Markdown
Contributor

🟢 All four failures are the same standing Firefox red — this roll is clear

Hi, I'm the Playwright bot and I triaged the "tests 2" CI failures here.

The four reds are one test, browsercontext-storage-state.spec.ts:453 › should work when service worker is intefering and the origin is not open, on four Firefox bots. It has never passed on firefox-library: 74 red out of 74 runs across 25 SHAs in the CI results DB, including main pushes and 13 unrelated PRs (#42734, #42728, #42718, #42707, #42654 …). Chromium (307/307) and WebKit (75/75) pass it.

Details

Overall: 4 failed, 111377 passed. All four are the same test on different bots, and it is red without this PR. Nothing here looks like a regression from r1544 → r1546.

Pre-existing failure

Worth noting, not a blocker

This roll carries the juggler half of that fix — Network.setRequestInterception({ bypassServiceWorker }) in NetworkObserver.js / PageHandler.js — but nothing calls it yet: bypassServiceWorker appears nowhere in packages/playwright-core/src outside the regenerated protocol.d.ts. So the test stays red until ffNetworkManager.setRequestInterception() passes the flag through. That's a follow-up on the Playwright side.

Flaky, not failures

The 26 flaky results (third-party partitioned cookies, video screencast, trace-viewer, oopif screenshot, android click) all passed on retry and are spread across Chromium, Firefox and WebKit on code this 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.

1 participant