Skip to content

WebMCP: Implement tool name validation - #59676

Merged
chromium-wpt-export-bot merged 1 commit into
masterfrom
chromium-export-cl-7744064
May 6, 2026
Merged

chromium-wpt-export-bot merged 1 commit into
masterfrom
chromium-export-cl-7744064

WebMCP: Implement tool name validation

296d54d
Select commit
Loading
Failed to load commit list.
Community-TC Integration / wpt-firefox-nightly-results succeeded May 6, 2026 in 28m 45s

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-05-06T04:21:23.715Z
Resolved: 2026-05-06T04:23:50.795Z
Task Execution Time: 2 minutes, 27 seconds, 80 milliseconds
Task Status: completed
Reason Resolved: completed
TaskId: V8sOsLRWSoOkbSySCo3wUg
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-05-06 04:21:23.794Z] Task ID: V8sOsLRWSoOkbSySCo3wUg
[taskcluster 2026-05-06 04:21:23.795Z] Worker ID: 132446353419127561
[taskcluster 2026-05-06 04:21:23.795Z] Worker Group: us-central1-f
[taskcluster 2026-05-06 04:21:23.795Z] Worker Node Type: projects/757942385826/machineTypes/n2-standard-4
[taskcluster 2026-05-06 04:21:23.795Z] Worker Pool: proj-wpt/ci
[taskcluster 2026-05-06 04:21:23.795Z] Worker Version: 46.1.0
[taskcluster 2026-05-06 04:21:23.795Z] Public IP: 35.238.121.234
[taskcluster 2026-05-06 04:21:23.795Z] Hostname: proj-wpt-ci-qjyp0iysrkote-yp4pnhla

[taskcluster 2026-05-06 04:21:24.482Z] === Task Starting ===
+ '[' '' ']'
+ '[' -d /etc/profile.d ']'
+ for i in /etc/profile.d/*.sh
+ '[' -r /etc/profile.d/01-locale-fix.sh ']'
+ . /etc/profile.d/01-locale-fix.sh
+++ /usr/bin/locale-check C.UTF-8
++ eval
+ for i in /etc/profile.d/*.sh
+ '[' -r /etc/profile.d/apps-bin-path.sh ']'
+ . /etc/profile.d/apps-bin-path.sh

...(305 lines hidden)...

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' for argument registration: No module named 'mozleak'
Warning: could not load product 'firefox_android' for argument registration: No module named 'mozrunner'
 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.17 INFO Identified 1 affected tests
 0:35.17 INFO Using certutil /usr/bin/certutil
 0:35.17 INFO Downloading geckodriver
 0:35.17 INFO Attempting to install webdriver from nightly
 0:35.52 INFO Extracted geckodriver to /home/test/web-platform-tests/_venv3/bin/geckodriver
 0:35.52 INFO Installed b'geckodriver 0.36.0 (eba9ec233887 2026-05-02 07:06 +0000)'
 0:41.57 INFO Getting profile data from git ref 6087999d87e808ec39f260293afd6cc27b6c5944
 0:41.94 INFO Test prefs downloaded to /home/test/web-platform-tests/_venv3/profiles/6087999d87e808ec39f260293afd6cc27b6c5944/152.0a1
 0:41.94 INFO Downloading OpenH264 plugin
mem avail: 14603 of 15806 MiB (92.39%), swap free:    0 of    0 MiB ( 0.00%)
 0:47.57 INFO Downloading openh264.json from git ref 6087999d87e808ec39f260293afd6cc27b6c5944
 0:47.65 INFO Downloading OpenH264 plugin from https://ciscobinary.openh264.org/openh264-linux64-652bdb7719f30b52b08e506645a7322ff1b2cc6f.zip
 0:47.93 INFO OpenH264 plugin installed to /home/test/web-platform-tests/_venv3/browsers/nightly/gmp-gmpopenh264/2.6.0
 0:47.93 INFO Using OpenH264 plugin in /home/test/web-platform-tests/_venv3/browsers/nightly/gmp-gmpopenh264/2.6.0
[1951] Sandbox: CanCreateUserNamespace() clone() failure: EPERM
 0:47.98 mozversion INFO application_buildid: 20260505214504
 0:47.98 mozversion INFO application_changeset: 85efeb4c050a3a7f161cc48ae063af4cb2ef1df7
 0:47.98 mozversion INFO application_display_name: Firefox Nightly
 0:47.98 mozversion INFO application_id: {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
 0:47.98 mozversion INFO application_name: Firefox
 0:47.98 mozversion INFO application_remotingname: firefox-nightly
 0:47.98 mozversion INFO application_repository: https://hg.mozilla.org/mozilla-central
 0:47.98 mozversion INFO application_vendor: Mozilla
 0:47.98 mozversion INFO application_version: 152.0a1
 0:47.98 mozversion INFO platform_buildid: 20260505214504
 0:47.98 mozversion INFO platform_changeset: 85efeb4c050a3a7f161cc48ae063af4cb2ef1df7
 0:47.98 mozversion INFO platform_repository: https://hg.mozilla.org/mozilla-central
 0:47.98 mozversion INFO platform_version: 152.0a1
 0:57.27 INFO Installed font: Ahem.ttf
 0:58.21 wptserve INFO Starting http server on http://127.0.0.1:8000
 0:58.21 wptserve INFO Starting http server on http://127.0.0.1:8001
 0:58.24 wptserve INFO Starting http server on http://127.0.0.1:8002
 0:58.25 wptserve INFO Starting http server on http://127.0.0.1:8003
 0:58.26 wptserve INFO Starting https server on https://127.0.0.1:8444
 0:58.28 wptserve INFO Starting https server on https://127.0.0.1:8445
 0:58.28 wptserve INFO Starting https server on https://127.0.0.1:8443
 0:58.29 wptserve INFO Starting http2 server on https://127.0.0.1:9000
 0:58.29 wptserve INFO Starting https server on https://127.0.0.1:8446
 0:58.30 wptserve INFO Create socket on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
 0:58.30 wptserve INFO Bind on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
 0:58.30 wptserve INFO Listen on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
 0:58.30 wptserve INFO Create socket on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8889))
 0:58.31 wptserve INFO Bind on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8889))
 0:58.31 wptserve INFO Listen on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8889))
 0:58.40 wptserve INFO Starting WebTransport over HTTP/3 server on 127.0.0.1:11000
 0:58.72 SUITE_START: web-platform-test - running 1 tests
 1:08.77 INFO Using 1 child processes
 1:08.79 INFO Setting up ssl
 1:08.81 certutil Full command: /usr/bin/certutil -N -d /tmp/tmpjdyybtw5.mozrunner -f /tmp/tmpjdyybtw5.mozrunner/.crtdbpw
certutil b''
 1:08.83 certutil b''
 1:08.83 certutil b'\nCertificate Nickname                                         Trust Attributes\n                                                             SSL,S/MIME,JAR/XPI\n\nweb-platform-tests                                           CT,, \n'
 1:08.84 INFO Application command: /home/test/build/firefox/firefox --marionette --remote-allow-system-access about:blank -profile /tmp/tmpo13aqw_t
 1:08.85 INFO Starting runner
 1:08.86 pid:2055 Full command: /home/test/build/firefox/firefox --marionette --remote-allow-system-access about:blank
pid:2055 [2055] Sandbox: CanCreateUserNamespace() clone() failure: EPERM
 1:09.39 pid:2055 1778041420740	Marionette	INFO	Marionette enabled
 1:09.48 pid:2055 1778041420836	Marionette	INFO	Listening on port 37765
Failed to read: session.screen0.titlebar.left
Setting default value
Failed to read: session.screen0.titlebar.right
Setting default value
 1:11.80 pid:2055 console.error: services.settings:
 1:11.80 pid:2055   Message: EmptyDatabaseError: "main/nimbus-desktop-experiments" has not been synced yet
 1:11.80 pid:2055   Stack:
 1:11.80 pid:2055     EmptyDatabaseError@resource://services-settings/Database.sys.mjs:19:5
 1:11.81 pid:2055 list@resource://services-settings/Database.sys.mjs:96:13
 1:12.45 TEST_START: /webmcp/imperative/register_tool_name_validation.https.window.html
 1:13.15 TEST_END: Test OK. Subtests passed 0/2. Unexpected 2
FAIL Valid tool names are accepted. - can't access property "registerTool", navigator.modelContext is undefined
@https://web-platform.test:8443/webmcp/imperative/register_tool_name_validation.https.window.js:15:5
Test.prototype.step@https://web-platform.test:8443/resources/testharness.js:2869:25
test@https://web-platform.test:8443/resources/testharness.js:633:30
@https://web-platform.test:8443/webmcp/imperative/register_tool_name_validation.https.window.js:1:5
FAIL Invalid tool names throw InvalidStateError. - assert_throws_dom: Tool name '' is invalid. function "() => {
        navigator.modelContext.registerTool({
          name: name,
          description: 'invalid name test',
          execute: async () => 'empty'
        });
      }" threw object "TypeError: can't access property "registerTool", navigator.modelContext is undefined" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
@https://web-platform.test:8443/webmcp/imperative/register_tool_name_validation.https.window.js:59:22
Test.prototype.step@https://web-platform.test:8443/resources/testharness.js:2869:25
test@https://web-platform.test:8443/resources/testharness.js:633:30
@https://web-platform.test:8443/webmcp/imperative/register_tool_name_validation.https.window.js:23:5

 1:13.15 INFO No more tests
 1:13.15 pid:2055 1778041424505	Marionette	INFO	Stopped listening on port 37765
 1:13.68 INFO Browser exited with return code 0
 1:13.48 INFO Closing logging queue
 1:13.48 INFO queue closed
 1:13.69 SUITE_END

web-platform-test
~~~~~~~~~~~~~~~~~
Ran 3 checks (2 subtests, 1 tests)
Expected results: 1
Unexpected results: 2
  subtest: 2 (2 fail)

Error Summary
-------------
/webmcp/imperative/register_tool_name_validation.https.window.html
  FAIL Valid tool names are accepted. - can't access property "registerTool", navigator.modelContext is undefined
@https://web-platform.test:8443/webmcp/imperative/register_tool_name_validation.https.window.js:15:5
Test.prototype.step@https://web-platform.test:8443/resources/testharness.js:2869:25
test@https://web-platform.test:8443/resources/testharness.js:633:30
@https://web-platform.test:8443/webmcp/imperative/register_tool_name_validation.https.window.js:1:5
  FAIL Invalid tool names throw InvalidStateError. - assert_throws_dom: Tool name '' is invalid. function "() => {
        navigator.modelContext.registerTool({
          name: name,
          description: 'invalid name test',
          execute: async () => 'empty'
        });
      }" threw object "TypeError: can't access property "registerTool", navigator.modelContext is undefined" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
@https://web-platform.test:8443/webmcp/imperative/register_tool_name_validation.https.window.js:59:22
Test.prototype.step@https://web-platform.test:8443/resources/testharness.js:2869:25
test@https://web-platform.test:8443/resources/testharness.js:633:30
@https://web-platform.test:8443/webmcp/imperative/register_tool_name_validation.https.window.js:23:5
 1:13.69 INFO Got 1 unexpected results, with 0 unexpected passes
 1:13.69 wptserve INFO Stopped http server on 127.0.0.1:8000
 1:13.69 wptserve INFO Stopped http server on 127.0.0.1:8001
 1:13.69 wptserve INFO Stopped http server on 127.0.0.1:8002
 1:13.69 wptserve INFO Stopped http server on 127.0.0.1:8003
 1:13.69 wptserve INFO Stopped http server on 127.0.0.1:8443
 1:13.69 wptserve INFO Stopped http server on 127.0.0.1:8444
 1:13.69 wptserve INFO Stopped http server on 127.0.0.1:8446
 1:13.70 wptserve INFO Stopped http server on 127.0.0.1:8445
 1:13.70 wptserve INFO Stopped http server on 127.0.0.1:9000
 1:13.70 wptserve INFO Stopped WebTransport over HTTP/3 server on 127.0.0.1:11000
 1:13.73 wptserve INFO Close on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8889))
 1:13.74 wptserve INFO Close on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
 1:13.84 INFO Removed font: Ahem.ttf
 1:13.86 INFO Closing logging queue
 1:13.86 INFO queue closed
 1:13.86 INFO Tolerating 1 unexpected results
[taskcluster 2026-05-06 04:23:47.865Z] === Task Finished ===
[taskcluster 2026-05-06 04:23:48.896Z] Successful task run with exit code: 0 completed in 145.102 seconds