WebMCP: Reject invalid origins with "NotSupportedError" - #61564
Community-TC (pull_request)
Collect results for all tests affected by a pull request in firefox.
Details
View task in Taskcluster | View logs in Taskcluster | View task group in Taskcluster
Task Status
Started: 2026-07-28T02:18:47.682Z
Resolved: 2026-07-28T02:21:48.058Z
Task Execution Time: 3 minutes, 376 milliseconds
Task Status: completed
Reason Resolved: completed
TaskId: SsJMXcHKSSiqlSgc2WL-RQ
RunId: 0
Artifacts
- public/logs/live_backing.log
- public/logs/live.log
- public/results/checkrun.md
- public/results/wpt_report.json.gz
- public/results/wpt_screenshot.txt.gz
WPT Command: python3 ./wpt run --channel=nightly --no-fail-on-unexpected --log-wptreport=../artifacts/wpt_report.json --log-wptscreenshot=../artifacts/wpt_screenshot.txt --affected base_head --log-mach-level=info --log-mach=- -y --no-pause --no-restart-on-unexpected --install-fonts --verify-log-full --no-headless --binary=/home/test/build/firefox/firefox firefox
[taskcluster 2026-07-28 02:18:47.792Z] Task ID: SsJMXcHKSSiqlSgc2WL-RQ
[taskcluster 2026-07-28 02:18:47.792Z] Worker ID: 7037816229817855908
[taskcluster 2026-07-28 02:18:47.792Z] Worker Group: us-east4-c
[taskcluster 2026-07-28 02:18:47.792Z] Worker Node Type: projects/757942385826/machineTypes/n2-standard-4
[taskcluster 2026-07-28 02:18:47.792Z] Worker Pool: proj-wpt/ci
[taskcluster 2026-07-28 02:18:47.792Z] Worker Version: 46.1.0
[taskcluster 2026-07-28 02:18:47.792Z] Public IP: 34.182.198.222
[taskcluster 2026-07-28 02:18:47.792Z] Hostname: proj-wpt-ci-ajep7-ywqdwj9rizwgissg
b1e71f63927a - Started downloading
5b82b858ea7e - Started downloading
b1e71f63927a - Downloaded in 0.004 seconds
66587c81b81a - Started downloading
08c7e224535e - Started downloading
08c7e224535e - Downloaded in 0.01 seconds
32bbaaf98e4c - Started downloading
66587c81b81a - Downloaded in 0.195 seconds
4f4fb700ef54 - Started downloading
4f4fb700ef54 - Downloaded in 0.002 seconds
dd5257950bd4 - Started downloading
...(318 lines hidden)...
Setting default value
Failed to read: session.screen0.window.focus.alpha
Setting default value
Failed to read: session.screen0.window.unfocus.alpha
Setting default value
Failed to read: session.screen0.menu.alpha
Setting default value
Failed to read: session.screen0.menuDelay
Setting default value
Failed to read: session.screen0.tab.width
Setting default value
Failed to read: session.screen0.tooltipDelay
Setting default value
Failed to read: session.screen0.allowRemoteActions
Setting default value
Failed to read: session.screen0.clientMenu.usePixmap
Setting default value
Failed to read: session.screen0.tabs.usePixmap
Setting default value
Failed to read: session.screen0.tabs.maxOver
Setting default value
Failed to read: session.screen0.tabs.intitlebar
Setting default value
Failed to read: session.screen0.focusModel
Setting default value
Failed to read: session.screen0.tabFocusModel
Setting default value
Failed to read: session.screen0.focusNewWindows
Setting default value
Failed to read: session.screen0.focusSameHead
Setting default value
Failed to read: session.screen0.rowPlacementDirection
Setting default value
Failed to read: session.screen0.colPlacementDirection
Setting default value
Failed to read: session.screen0.windowPlacement
Setting default value
Failed to read: session.screen0.slit.acceptKdeDockapps
Setting default value
Failed to read: session.screen0.slit.autoHide
Setting default value
Failed to read: session.screen0.slit.maxOver
Setting default value
Failed to read: session.screen0.slit.placement
Setting default value
Failed to read: session.screen0.slit.alpha
Setting default value
Failed to read: session.screen0.slit.onhead
Setting default value
Failed to read: session.screen0.slit.layer
Setting default value
Failed to read: session.screen0.toolbar.autoHide
Setting default value
Failed to read: session.screen0.toolbar.maxOver
Setting default value
Failed to read: session.screen0.toolbar.visible
Setting default value
Failed to read: session.screen0.toolbar.alpha
Setting default value
Failed to read: session.screen0.toolbar.layer
Setting default value
Failed to read: session.screen0.toolbar.onhead
Setting default value
Failed to read: session.screen0.toolbar.placement
Setting default value
Failed to read: session.screen0.toolbar.height
Setting default value
Failed to read: session.screen0.iconbar.mode
Setting default value
Failed to read: session.screen0.iconbar.alignment
Setting default value
Failed to read: session.screen0.iconbar.iconWidth
Setting default value
Failed to read: session.screen0.iconbar.iconTextPadding
Setting default value
Failed to read: session.screen0.iconbar.usePixmap
Setting default value
Warning: could not load product 'firefox_android' for argument registration: No module named 'mozrunner'
Warning: could not load product 'firefox' for argument registration: No module named 'mozleak'
0:00.00 INFO Set tests_root to /home/test/web-platform-tests
0:00.00 INFO Set metadata_root to /home/test/web-platform-tests
0:00.00 INFO Set manifest_update to True
0:00.00 INFO Set manifest_download to True
0:35.56 INFO Identified 2 affected tests
0:35.56 INFO Using certutil /usr/bin/certutil
0:35.56 INFO Downloading geckodriver
0:35.56 INFO Attempting to install webdriver from nightly
0:35.95 INFO Extracted geckodriver to /home/test/web-platform-tests/_venv3/bin/geckodriver
0:35.95 INFO Installed b'geckodriver 0.37.1 (fec71d8cf2bd 2026-07-21 06:35 +0000)'
0:37.10 INFO Getting profile data from git ref main
0:37.44 INFO Test prefs downloaded to /home/test/web-platform-tests/_venv3/profiles/nightly/155.0a1
0:37.44 INFO Downloading OpenH264 plugin
0:38.67 INFO Downloading openh264.json from git ref main
0:38.73 INFO Downloading OpenH264 plugin from https://ciscobinary.openh264.org/openh264-linux64-652bdb7719f30b52b08e506645a7322ff1b2cc6f.zip
0:38.84 INFO OpenH264 plugin installed to /home/test/web-platform-tests/_venv3/browsers/nightly/gmp-gmpopenh264/2.6.0
0:38.84 INFO Using OpenH264 plugin in /home/test/web-platform-tests/_venv3/browsers/nightly/gmp-gmpopenh264/2.6.0
[1946] Sandbox: CanCreateUserNamespace() clone() failure: EPERM
0:38.89 mozversion INFO application_buildid: 20260727131500
0:38.89 mozversion INFO application_changeset: be36ed55e648665f0098388d4b1a07e94da92a18
0:38.89 mozversion INFO application_display_name: Firefox Nightly
0:38.89 mozversion INFO application_id: {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
0:38.89 mozversion INFO application_name: Firefox
0:38.90 mozversion INFO application_remotingname: firefox-nightly
0:38.90 mozversion INFO application_repository: https://hg.mozilla.org/mozilla-central
0:38.90 mozversion INFO application_vendor: Mozilla
0:38.90 mozversion INFO application_version: 155.0a1
0:38.90 mozversion INFO platform_buildid: 20260727131500
0:38.90 mozversion INFO platform_changeset: be36ed55e648665f0098388d4b1a07e94da92a18
0:38.90 mozversion INFO platform_repository: https://hg.mozilla.org/mozilla-central
0:38.90 mozversion INFO platform_version: 155.0a1
mem avail: 14531 of 15806 MiB (91.94%), swap free: 0 of 0 MiB ( 0.00%)
0:48.63 INFO Installed font: Ahem.ttf
0:49.52 wptserve INFO Starting http server on http://127.0.0.1:8003
0:49.55 wptserve INFO Starting http server on http://127.0.0.1:8000
0:49.57 wptserve INFO Starting https server on https://127.0.0.1:8445
0:49.61 wptserve INFO Starting http server on http://127.0.0.1:8001
0:49.63 wptserve INFO Starting http server on http://127.0.0.1:8002
0:49.65 wptserve INFO Starting https server on https://127.0.0.1:8446
0:49.66 wptserve INFO Starting https server on https://127.0.0.1:8444
0:49.66 wptserve INFO Starting https server on https://127.0.0.1:8443
0:49.68 wptserve INFO Create socket on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8889))
0:49.68 wptserve INFO Bind on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8889))
0:49.68 wptserve INFO Listen on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8889))
0:49.68 wptserve INFO Starting http2 server on https://127.0.0.1:9000
0:49.68 wptserve INFO Create socket on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
0:49.69 wptserve INFO Bind on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
0:49.69 wptserve INFO Listen on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
0:49.75 wptserve INFO Starting WebTransport over HTTP/3 server on 127.0.0.1:11000
0:50.08 SUITE_START: web-platform-test - running 2 tests
0:55.67 INFO Using 1 child processes
0:55.69 INFO Setting up ssl
0:55.71 certutil Full command: /usr/bin/certutil -N -d /tmp/tmp2k3i51ty.mozrunner -f /tmp/tmp2k3i51ty.mozrunner/.crtdbpw
certutil b''
0:55.73 certutil b''
0:55.74 certutil b'\nCertificate Nickname Trust Attributes\n SSL,S/MIME,JAR/XPI\n\nweb-platform-tests CT,, \n'
0:55.74 INFO Application command: /home/test/build/firefox/firefox --marionette --remote-allow-system-access about:blank -profile /tmp/tmp55pwebly
0:55.75 INFO Starting runner
0:55.76 pid:2050 Full command: /home/test/build/firefox/firefox --marionette --remote-allow-system-access about:blank
pid:2050 [2050] Sandbox: CanCreateUserNamespace() clone() failure: EPERM
0:56.29 pid:2050 1785205298410 Marionette INFO Marionette enabled
0:56.38 pid:2050 1785205298505 Marionette INFO Listening on port 48483
Failed to read: session.screen0.titlebar.left
Setting default value
Failed to read: session.screen0.titlebar.right
Setting default value
0:58.69 pid:2050 console.error: services.settings:
0:58.69 pid:2050 Message: EmptyDatabaseError: "main/nimbus-desktop-experiments" has not been synced yet
0:58.69 pid:2050 Stack:
0:58.69 pid:2050 EmptyDatabaseError@resource://services-settings/Database.sys.mjs:19:5
0:58.69 pid:2050 list@resource://services-settings/Database.sys.mjs:96:13
0:59.21 TEST_START: /webmcp/declarative/opaque-origin-tools.https.html
0:59.88 TEST_END: Test OK. Subtests passed 0/2. Unexpected 2
FAIL An opaque origin document can register but not execute its own declarative tools - promise_test: Unhandled rejection with value: object "TypeError: can't access property "getTools", document.modelContext is undefined"FAIL executeTool() rejects synchronously for opaque origins - promise_test: Unhandled rejection with value: object "TypeError: can't access property "getTools", document.modelContext is undefined"
0:59.88 TEST_START: /webmcp/imperative/opaque-origin-tools.https.html
0:59.89 INFO Closing window 91b7a792-dad4-461c-83a8-1dfe4260788e
1:00.17 TEST_END: Test OK. Subtests passed 0/4. Unexpected 4
FAIL An opaque origin document can register but not execute its own tools - promise_test: Unhandled rejection with value: object "TypeError: can't access property "registerTool", document.modelContext is undefined"FAIL executeTool() rejects synchronously for origin "null" that fails to parse as a URL - promise_test: Unhandled rejection with value: object "TypeError: can't access property "getTools", document.modelContext is undefined"FAIL executeTool() rejects synchronously for invalid origin: https://test.example:invalidport - promise_test: Unhandled rejection with value: object "TypeError: can't access property "executeTool", document.modelContext is undefined"FAIL executeTool() rejects synchronously for invalid origin: data:text/html,foo - promise_test: Unhandled rejection with value: object "TypeError: can't access property "executeTool", document.modelContext is undefined"
1:00.17 INFO No more tests
1:00.17 pid:2050 1785205302297 Marionette INFO Stopped listening on port 48483
1:00.72 INFO Browser exited with return code 0
1:00.52 INFO Closing logging queue
1:00.52 INFO queue closed
1:00.73 SUITE_END
web-platform-test
~~~~~~~~~~~~~~~~~
Ran 8 checks (6 subtests, 2 tests)
Expected results: 2
Unexpected results: 6
subtest: 6 (6 fail)
Error Summary
-------------
/webmcp/declarative/opaque-origin-tools.https.html
FAIL An opaque origin document can register but not execute its own declarative tools - promise_test: Unhandled rejection with value: object "TypeError: can't access property "getTools", document.modelContext is undefined"
FAIL executeTool() rejects synchronously for opaque origins - promise_test: Unhandled rejection with value: object "TypeError: can't access property "getTools", document.modelContext is undefined"
/webmcp/imperative/opaque-origin-tools.https.html
FAIL An opaque origin document can register but not execute its own tools - promise_test: Unhandled rejection with value: object "TypeError: can't access property "registerTool", document.modelContext is undefined"
FAIL executeTool() rejects synchronously for origin "null" that fails to parse as a URL - promise_test: Unhandled rejection with value: object "TypeError: can't access property "getTools", document.modelContext is undefined"
FAIL executeTool() rejects synchronously for invalid origin: https://test.example:invalidport - promise_test: Unhandled rejection with value: object "TypeError: can't access property "executeTool", document.modelContext is undefined"
FAIL executeTool() rejects synchronously for invalid origin: data:text/html,foo - promise_test: Unhandled rejection with value: object "TypeError: can't access property "executeTool", document.modelContext is undefined"
1:00.73 INFO Got 2 unexpected results, with 0 unexpected passes
1:00.73 wptserve INFO Stopped http server on 127.0.0.1:8000
1:00.73 wptserve INFO Stopped http server on 127.0.0.1:8001
1:00.73 wptserve INFO Stopped http server on 127.0.0.1:8002
1:00.74 wptserve INFO Stopped http server on 127.0.0.1:8003
1:00.74 wptserve INFO Stopped http server on 127.0.0.1:8443
1:00.74 wptserve INFO Stopped http server on 127.0.0.1:8444
1:00.74 wptserve INFO Stopped http server on 127.0.0.1:8445
1:00.74 wptserve INFO Stopped http server on 127.0.0.1:8446
1:00.74 wptserve INFO Stopped http server on 127.0.0.1:9000
1:00.74 wptserve INFO Stopped WebTransport over HTTP/3 server on 127.0.0.1:11000
1:01.09 wptserve INFO Close on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8889))
1:01.09 wptserve INFO Close on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
1:01.13 INFO Removed font: Ahem.ttf
1:01.15 INFO Closing logging queue
1:01.15 INFO queue closed
1:01.15 INFO Tolerating 2 unexpected results
[taskcluster 2026-07-28 02:21:46.150Z] === Task Finished ===
[taskcluster 2026-07-28 02:21:47.296Z] Successful task run with exit code: 0 completed in 179.507 seconds