Skip to content

fix(webkit): preserve PublicKeyCredential interface shape - #43775

Merged
Pavel Feldman (pavelfeldman) merged 1 commit into
mainfrom
triage/43711/40945787045-1
Oct 30, 2026
Merged

Pavel Feldman (pavelfeldman) merged 1 commit into
mainfrom
triage/43711/40945787045-1

Conversation

@microsoft-playwright-automation

Copy link
Copy Markdown
Contributor

WebKit's PublicKeyCredential fallback is a plain object, so constructor-based WebAuthn feature checks reject it. Use a named class that throws on construction in both WebKit backends, preserving native constructors and the existing async static methods.

Extend CA-029 to check the interface shape before and after virtual credentials are installed.

Fixes #43711

Prepared by the triage workflow.

@github-actions

Copy link
Copy Markdown
Contributor

Test results for "MCP"

5194 passed, 616 skipped


Merge workflow run.

@github-actions

Copy link
Copy Markdown
Contributor

Test results for "tests 1"

1 failed
❌ [chromium-library] › library/video.spec.ts:762 › screencast › VI-030 should work with video+trace @chromium-playwright-x64-ubuntu24-64-core-node22

23596 passed, 707 skipped


Merge workflow run.

@github-actions

Copy link
Copy Markdown
Contributor

🟡 One iOS failure remains uncertain

Hi, I'm the Playwright bot. I checked the CI failures against the PR diff and refreshed test history.

Details

The only failure in the latest merged report is a confirmed Chromium flake. The separate iOS WebView checks have 16 failures: 15 also failed before this PR, and one lacks independent history. None has a demonstrated link to this PR.

The diff changes only WebKit's PublicKeyCredential fallback and its capability test. That test, CA-029, passed on Chromium, Firefox, and desktop WebKit.

Uncertain

  • [webkit-webview-page] › page/elementhandle-scroll-into-view.spec.ts:88 › EH-124 should scroll nested display:contents into view — timed out after 30 seconds on both attempts. The PR does not change scrolling or this test, so a connection looks unlikely. However, the refreshed database contains this exact test/project only on this PR. A run of this test on iOS at the PR's base, bda54b052be6, is needed to establish whether it already fails there.

Pre-existing flake / infra

  • [chromium-library] › library/video.spec.ts:762 › screencast › VI-030 should work with video+trace — all four attempts failed because the trace contained no screencast-frame, causing frame.file to throw. The same test on the same Ubuntu bot produced the identical error and then passed on retry in #43774's run, before this PR. Across 271 earlier unrelated run attempts on that bot, 23 ended in failure and 118 passed after an earlier failure. This PR does not change Chromium, video recording, or tracing.

  • 15 iOS WebView failures are pre-existing, not necessarily intermittent. Each exact test/project also failed with the same assertion or timeout in #43363's October 28 run, before this PR. All entries below are [webkit-webview-page] under page/:

File Test IDs Matching earlier failure
locator-any-frame.spec.ts LO-028, LO-048, LO-049, LO-050 Two frames instead of three
locator-is-visible.spec.ts LO-121 List-box option reported hidden
page-add-init-script-callback.spec.ts IS-021 Three callbacks instead of two
page-click.spec.ts CL-076 Removed iframe still retained
page-drag.spec.ts DD-028 Drop effect none instead of move
page-filechooser.spec.ts FC-027 Timed out waiting for the file chooser
page-focus.spec.ts FO-012 Focus assertion returned false
page-goto.spec.ts NA-003 File-URL navigation timed out
page-mouse.spec.ts MO-012 Mouse movement deltas were zero
page-navigation.spec.ts NA-070 Frame load interrupted
page-screenshot.spec.ts SS-095 page.setViewportSize: Method not implemented
page-set-input-files.spec.ts IF-003 Folder upload timed out

Triaged by the Playwright bot - agent run

@dgozman
Dmitry Gozman (dgozman) marked this pull request as ready for review October 30, 2026 11:28
@pavelfeldman
Pavel Feldman (pavelfeldman) merged commit 5d5a5c7 into main Oct 30, 2026
23 of 28 checks passed
@pavelfeldman
Pavel Feldman (pavelfeldman) deleted the triage/43711/40945787045-1 branch October 30, 2026 15:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: WebKit's injected PublicKeyCredential is a plain object, so WebAuthn libraries report no support

2 participants