Closed Bug 1925437 Opened 21 days ago Closed 18 days ago

[wpt-sync] Sync PR 48690 - webnn: Deprecate MLTensorUsage in favor of boolean flags

Categories

(Testing :: web-platform-tests, task, P4)

task

Tracking

(firefox133 fixed)

RESOLVED FIXED
133 Branch
Tracking Status
firefox133 --- fixed

People

(Reporter: wpt-sync, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Attachments

(1 file)

Sync web-platform-tests PR 48690 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/48690
Details from upstream follow.

Austin Sullivan <asully@chromium.org> wrote:

webnn: Deprecate MLTensorUsage in favor of boolean flags

As per the feedback on this thread on the MLTensor explainer PR:
https://github.com/webmachinelearning/webnn/pull/754#discussion_r1772300523

This CL includes logic to still support specifying the deprecated
MLTensorUsage flags for now, though this logic will only exist for
about a milestone to give callers the opportunity to migrate their
existing code

Bug: 343638938
Change-Id: I56209e68fde3920b8d6c781c8f804ac6fcd35c9a
Cq-Include-Trybots: luci.chromium.try:mac14.arm64-blink-rel,win11-blink-rel
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5933323
Reviewed-by: ningxin hu \<ningxin.hu@intel.com>
Auto-Submit: Austin Sullivan \<asully@chromium.org>
Commit-Queue: ningxin hu \<ningxin.hu@intel.com>
Cr-Commit-Position: refs/heads/main@{#1370419}

Attached file Notable wpt changes —
# CI Results Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI Total 36 tests and 6 subtests ## Status Summary ### Firefox `OK` : 6 `FAIL` : 84 `ERROR` : 30 `NOTRUN`: 162 ### Chrome `OK` : 18 `PASS` : 198 `FAIL` : 192 `ERROR` : 18 `NOTRUN`: 60 ### Safari `OK` : 6 `FAIL` : 84 `ERROR` : 30 `NOTRUN`: 162 ## Links [Gecko CI (Treeherder)](https://treeherder.mozilla.org/#/jobs?repo=try&revision=97c728f418737a912fb2ae1c419adea586e607f3) [GitHub PR Head](https://wpt.fyi/results/?sha=a11cf3344b4c0b1e6f02ee82eeeb09cb8390dd06&label=pr_head) [GitHub PR Base](https://wpt.fyi/results/?sha=a11cf3344b4c0b1e6f02ee82eeeb09cb8390dd06&label=pr_base) ## Details ### New Tests That Don't Pass * [/webnn/conformance_tests/byob_readtensor.https.any.worker.html?cpu](https://wpt.live/webnn/conformance_tests/byob_readtensor.https.any.worker.html?cpu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/byob_readtensor.https.any.worker.html?cpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `ERROR`) * assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator"): `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * readTensor() with an ArrayBuffer that is too small should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a TypedArray that is too small should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a detached ArrayBuffer should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * Detaching an ArrayBuffer while readTensor() is in progress should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with an ArrayBuffer: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a TypedArray: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a larger ArrayBuffer: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a larger TypedArray: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() rejects on a destroyed MLTensor: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() rejects when the MLTensor is destroyed: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * [/webnn/conformance_tests/byob_readtensor.https.any.worker.html?gpu](https://wpt.live/webnn/conformance_tests/byob_readtensor.https.any.worker.html?gpu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/byob_readtensor.https.any.worker.html?gpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `ERROR`) * assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator"): `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * readTensor() with an ArrayBuffer that is too small should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a TypedArray that is too small should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a detached ArrayBuffer should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * Detaching an ArrayBuffer while readTensor() is in progress should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with an ArrayBuffer: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a TypedArray: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a larger ArrayBuffer: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a larger TypedArray: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() rejects on a destroyed MLTensor: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() rejects when the MLTensor is destroyed: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * [/webnn/conformance_tests/byob_readtensor.https.any.html?npu](https://wpt.live/webnn/conformance_tests/byob_readtensor.https.any.html?npu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/byob_readtensor.https.any.html?npu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `ERROR`) * assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator"): `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * readTensor() with an ArrayBuffer that is too small should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a TypedArray that is too small should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a detached ArrayBuffer should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * Detaching an ArrayBuffer while readTensor() is in progress should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with an ArrayBuffer: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a TypedArray: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a larger ArrayBuffer: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a larger TypedArray: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() rejects on a destroyed MLTensor: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() rejects when the MLTensor is destroyed: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * [/webnn/conformance_tests/byob_readtensor.https.any.html?cpu](https://wpt.live/webnn/conformance_tests/byob_readtensor.https.any.html?cpu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/byob_readtensor.https.any.html?cpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `ERROR`) * assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator"): `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * readTensor() with an ArrayBuffer that is too small should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a TypedArray that is too small should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a detached ArrayBuffer should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * Detaching an ArrayBuffer while readTensor() is in progress should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with an ArrayBuffer: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a TypedArray: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a larger ArrayBuffer: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a larger TypedArray: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() rejects on a destroyed MLTensor: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() rejects when the MLTensor is destroyed: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * [/webnn/conformance_tests/byob_readtensor.https.any.html?gpu](https://wpt.live/webnn/conformance_tests/byob_readtensor.https.any.html?gpu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/byob_readtensor.https.any.html?gpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `ERROR`) * assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator"): `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * readTensor() with an ArrayBuffer that is too small should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a TypedArray that is too small should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a detached ArrayBuffer should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * Detaching an ArrayBuffer while readTensor() is in progress should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with an ArrayBuffer: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a TypedArray: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a larger ArrayBuffer: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a larger TypedArray: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() rejects on a destroyed MLTensor: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() rejects when the MLTensor is destroyed: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * [/webnn/conformance_tests/byob_readtensor.https.any.worker.html?npu](https://wpt.live/webnn/conformance_tests/byob_readtensor.https.any.worker.html?npu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/byob_readtensor.https.any.worker.html?npu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `ERROR`) * assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator"): `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * readTensor() with an ArrayBuffer that is too small should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a TypedArray that is too small should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a detached ArrayBuffer should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * Detaching an ArrayBuffer while readTensor() is in progress should reject: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with an ArrayBuffer: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a TypedArray: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a larger ArrayBuffer: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() with a larger TypedArray: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() rejects on a destroyed MLTensor: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * readTensor() rejects when the MLTensor is destroyed: `NOTRUN` (Chrome: `NOTRUN`, Safari: `NOTRUN`) * [/webnn/conformance_tests/inputs-are-not-modified.https.any.html?cpu](https://wpt.live/webnn/conformance_tests/inputs-are-not-modified.https.any.html?cpu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/inputs-are-not-modified.https.any.html?cpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * input tensor is not modified: hardSwish: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * input tensor is not modified: mul: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/conformance_tests/inputs-are-not-modified.https.any.worker.html?npu](https://wpt.live/webnn/conformance_tests/inputs-are-not-modified.https.any.worker.html?npu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/inputs-are-not-modified.https.any.worker.html?npu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * input tensor is not modified: hardSwish: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * input tensor is not modified: mul: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/conformance_tests/inputs-are-not-modified.https.any.worker.html?gpu](https://wpt.live/webnn/conformance_tests/inputs-are-not-modified.https.any.worker.html?gpu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/inputs-are-not-modified.https.any.worker.html?gpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * input tensor is not modified: hardSwish: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * input tensor is not modified: mul: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/conformance_tests/inputs-are-not-modified.https.any.html?gpu](https://wpt.live/webnn/conformance_tests/inputs-are-not-modified.https.any.html?gpu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/inputs-are-not-modified.https.any.html?gpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * input tensor is not modified: hardSwish: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * input tensor is not modified: mul: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/conformance_tests/inputs-are-not-modified.https.any.worker.html?cpu](https://wpt.live/webnn/conformance_tests/inputs-are-not-modified.https.any.worker.html?cpu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/inputs-are-not-modified.https.any.worker.html?cpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * input tensor is not modified: hardSwish: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * input tensor is not modified: mul: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/conformance_tests/inputs-are-not-modified.https.any.html?npu](https://wpt.live/webnn/conformance_tests/inputs-are-not-modified.https.any.html?npu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/inputs-are-not-modified.https.any.html?npu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * input tensor is not modified: hardSwish: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * input tensor is not modified: mul: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/conformance_tests/parallel-dispatch.https.any.worker.html?cpu](https://wpt.live/webnn/conformance_tests/parallel-dispatch.https.any.worker.html?cpu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/parallel-dispatch.https.any.worker.html?cpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * dispatch queues behind readTensor: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/dispatch/read, write/dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/write..., dispatch/read, dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/write..., dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph serial inputs: dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs: write/write..., dispatch/read, dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs: write/write..., dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs serial inputs: dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs using the same tensors: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/conformance_tests/parallel-dispatch.https.any.worker.html?npu](https://wpt.live/webnn/conformance_tests/parallel-dispatch.https.any.worker.html?npu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/parallel-dispatch.https.any.worker.html?npu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * dispatch queues behind readTensor: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/dispatch/read, write/dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/write..., dispatch/read, dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/write..., dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph serial inputs: dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs: write/write..., dispatch/read, dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs: write/write..., dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs serial inputs: dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs using the same tensors: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/conformance_tests/parallel-dispatch.https.any.worker.html?gpu](https://wpt.live/webnn/conformance_tests/parallel-dispatch.https.any.worker.html?gpu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/parallel-dispatch.https.any.worker.html?gpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * dispatch queues behind readTensor: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/dispatch/read, write/dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/write..., dispatch/read, dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/write..., dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph serial inputs: dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs: write/write..., dispatch/read, dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs: write/write..., dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs serial inputs: dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs using the same tensors: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/conformance_tests/parallel-dispatch.https.any.html?npu](https://wpt.live/webnn/conformance_tests/parallel-dispatch.https.any.html?npu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/parallel-dispatch.https.any.html?npu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * dispatch queues behind readTensor: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/dispatch/read, write/dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/write..., dispatch/read, dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/write..., dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph serial inputs: dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs: write/write..., dispatch/read, dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs: write/write..., dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs serial inputs: dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs using the same tensors: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/conformance_tests/parallel-dispatch.https.any.html?cpu](https://wpt.live/webnn/conformance_tests/parallel-dispatch.https.any.html?cpu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/parallel-dispatch.https.any.html?cpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * dispatch queues behind readTensor: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/dispatch/read, write/dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/write..., dispatch/read, dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/write..., dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph serial inputs: dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs: write/write..., dispatch/read, dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs: write/write..., dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs serial inputs: dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs using the same tensors: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/conformance_tests/parallel-dispatch.https.any.html?gpu](https://wpt.live/webnn/conformance_tests/parallel-dispatch.https.any.html?gpu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/parallel-dispatch.https.any.html?gpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * dispatch queues behind readTensor: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/dispatch/read, write/dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/write..., dispatch/read, dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph: write/write..., dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * same graph serial inputs: dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs: write/write..., dispatch/read, dispatch/read, ...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs: write/write..., dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs serial inputs: dispatch/dispatch..., read/read...: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * different graphs using the same tensors: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/conformance_tests/tensor.https.any.worker.html?cpu](https://wpt.live/webnn/conformance_tests/tensor.https.any.worker.html?cpu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/tensor.https.any.worker.html?cpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `ERROR`) * assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator"): `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * [/webnn/conformance_tests/tensor.https.any.html?gpu](https://wpt.live/webnn/conformance_tests/tensor.https.any.html?gpu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/tensor.https.any.html?gpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `ERROR`) * assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator"): `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * [/webnn/conformance_tests/tensor.https.any.html?cpu](https://wpt.live/webnn/conformance_tests/tensor.https.any.html?cpu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/tensor.https.any.html?cpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `ERROR`) * assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator"): `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * [/webnn/conformance_tests/tensor.https.any.html?npu](https://wpt.live/webnn/conformance_tests/tensor.https.any.html?npu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/tensor.https.any.html?npu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `ERROR`) * assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator"): `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * [/webnn/conformance_tests/tensor.https.any.worker.html?npu](https://wpt.live/webnn/conformance_tests/tensor.https.any.worker.html?npu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/tensor.https.any.worker.html?npu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `ERROR`) * assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator"): `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * [/webnn/conformance_tests/tensor.https.any.worker.html?gpu](https://wpt.live/webnn/conformance_tests/tensor.https.any.worker.html?gpu) [[wpt.fyi](https://wpt.fyi/results/webnn/conformance_tests/tensor.https.any.worker.html?gpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `ERROR`) * assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator"): `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * [/webnn/validation_tests/destroyContext.https.any.html?npu](https://wpt.live/webnn/validation_tests/destroyContext.https.any.html?npu) [[wpt.fyi](https://wpt.fyi/results/webnn/validation_tests/destroyContext.https.any.html?npu)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `OK`) * Context will be lost by destroyed.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Context can be destroyed twice.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not build operator.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not create graph builder.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not build graph.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not compute.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not dispatch.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Executing dispatch() before context destroyed is OK.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not create tensor.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not read tensor.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Pending promise of readtensor() will be rejected immediately when context is destroyed.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not write tensor.: `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) * [/webnn/validation_tests/destroyContext.https.any.html?gpu](https://wpt.live/webnn/validation_tests/destroyContext.https.any.html?gpu) [[wpt.fyi](https://wpt.fyi/results/webnn/validation_tests/destroyContext.https.any.html?gpu)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `OK`) * Context will be lost by destroyed.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Context can be destroyed twice.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not build operator.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not create graph builder.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not build graph.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not compute.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not dispatch.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Executing dispatch() before context destroyed is OK.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not create tensor.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not read tensor.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Pending promise of readtensor() will be rejected immediately when context is destroyed.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not write tensor.: `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) * [/webnn/validation_tests/destroyContext.https.any.worker.html?npu](https://wpt.live/webnn/validation_tests/destroyContext.https.any.worker.html?npu) [[wpt.fyi](https://wpt.fyi/results/webnn/validation_tests/destroyContext.https.any.worker.html?npu)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `OK`) * Context will be lost by destroyed.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Context can be destroyed twice.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not build operator.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not create graph builder.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not build graph.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not compute.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not dispatch.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Executing dispatch() before context destroyed is OK.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not create tensor.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not read tensor.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Pending promise of readtensor() will be rejected immediately when context is destroyed.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not write tensor.: `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) * [/webnn/validation_tests/destroyContext.https.any.html?cpu](https://wpt.live/webnn/validation_tests/destroyContext.https.any.html?cpu) [[wpt.fyi](https://wpt.fyi/results/webnn/validation_tests/destroyContext.https.any.html?cpu)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `OK`) * Context will be lost by destroyed.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Context can be destroyed twice.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not build operator.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not create graph builder.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not build graph.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not compute.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not dispatch.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Executing dispatch() before context destroyed is OK.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not create tensor.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not read tensor.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Pending promise of readtensor() will be rejected immediately when context is destroyed.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not write tensor.: `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) * [/webnn/validation_tests/destroyContext.https.any.worker.html?gpu](https://wpt.live/webnn/validation_tests/destroyContext.https.any.worker.html?gpu) [[wpt.fyi](https://wpt.fyi/results/webnn/validation_tests/destroyContext.https.any.worker.html?gpu)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `OK`) * Context will be lost by destroyed.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Context can be destroyed twice.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not build operator.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not create graph builder.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not build graph.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not compute.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not dispatch.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Executing dispatch() before context destroyed is OK.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not create tensor.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not read tensor.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Pending promise of readtensor() will be rejected immediately when context is destroyed.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not write tensor.: `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) * [/webnn/validation_tests/destroyContext.https.any.worker.html?cpu](https://wpt.live/webnn/validation_tests/destroyContext.https.any.worker.html?cpu) [[wpt.fyi](https://wpt.fyi/results/webnn/validation_tests/destroyContext.https.any.worker.html?cpu)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `ERROR`, Safari: `OK`) * Context will be lost by destroyed.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Context can be destroyed twice.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not build operator.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not create graph builder.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not build graph.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not compute.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not dispatch.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Executing dispatch() before context destroyed is OK.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not create tensor.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not read tensor.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Pending promise of readtensor() will be rejected immediately when context is destroyed.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Destroyed context can not write tensor.: `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) * [/webnn/validation_tests/destroyGraph.https.any.html?gpu](https://wpt.live/webnn/validation_tests/destroyGraph.https.any.html?gpu) [[wpt.fyi](https://wpt.fyi/results/webnn/validation_tests/destroyGraph.https.any.html?gpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * Graph can be destroyed twice.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroyed graph can not compute.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroying graph after compute() with await is OK.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * compute() rejects when graph is destroyed.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroyed graph can not dispatch.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroying graph after dispatch() and before readTensor() is OK.: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/validation_tests/destroyGraph.https.any.worker.html?gpu](https://wpt.live/webnn/validation_tests/destroyGraph.https.any.worker.html?gpu) [[wpt.fyi](https://wpt.fyi/results/webnn/validation_tests/destroyGraph.https.any.worker.html?gpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * Graph can be destroyed twice.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroyed graph can not compute.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroying graph after compute() with await is OK.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * compute() rejects when graph is destroyed.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroyed graph can not dispatch.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroying graph after dispatch() and before readTensor() is OK.: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/validation_tests/destroyGraph.https.any.html?npu](https://wpt.live/webnn/validation_tests/destroyGraph.https.any.html?npu) [[wpt.fyi](https://wpt.fyi/results/webnn/validation_tests/destroyGraph.https.any.html?npu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * Graph can be destroyed twice.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroyed graph can not compute.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroying graph after compute() with await is OK.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * compute() rejects when graph is destroyed.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroyed graph can not dispatch.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroying graph after dispatch() and before readTensor() is OK.: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/validation_tests/destroyGraph.https.any.worker.html?cpu](https://wpt.live/webnn/validation_tests/destroyGraph.https.any.worker.html?cpu) [[wpt.fyi](https://wpt.fyi/results/webnn/validation_tests/destroyGraph.https.any.worker.html?cpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * Graph can be destroyed twice.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroyed graph can not compute.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroying graph after compute() with await is OK.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * compute() rejects when graph is destroyed.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroyed graph can not dispatch.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroying graph after dispatch() and before readTensor() is OK.: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/validation_tests/destroyGraph.https.any.html?cpu](https://wpt.live/webnn/validation_tests/destroyGraph.https.any.html?cpu) [[wpt.fyi](https://wpt.fyi/results/webnn/validation_tests/destroyGraph.https.any.html?cpu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * Graph can be destroyed twice.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroyed graph can not compute.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroying graph after compute() with await is OK.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * compute() rejects when graph is destroyed.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroyed graph can not dispatch.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroying graph after dispatch() and before readTensor() is OK.: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webnn/validation_tests/destroyGraph.https.any.worker.html?npu](https://wpt.live/webnn/validation_tests/destroyGraph.https.any.worker.html?npu) [[wpt.fyi](https://wpt.fyi/results/webnn/validation_tests/destroyGraph.https.any.worker.html?npu)]: `ERROR` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows11-32-2009-qr-debug`, `Gecko-windows11-32-2009-qr-opt`, `Gecko-windows11-64-2009-qr-debug`, `Gecko-windows11-64-2009-qr-opt`] (Chrome: `OK`, Safari: `ERROR`) * Graph can be destroyed twice.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroyed graph can not compute.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroying graph after compute() with await is OK.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * compute() rejects when graph is destroyed.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroyed graph can not dispatch.: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Destroying graph after dispatch() and before readTensor() is OK.: `NOTRUN` (Chrome: `FAIL`, Safari: `NOTRUN`) (See attachment for full changes)
Pushed by wptsync@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/6f4fb11a3497 [wpt PR 48690] - webnn: Deprecate MLTensorUsage in favor of boolean flags, a=testonly
Status: NEW → RESOLVED
Closed: 18 days ago
Resolution: --- → FIXED
Target Milestone: --- → 133 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: