make[1]: Entering directory '/home/runner/work/moq-interop-runner/moq-interop-runner/main' Running tests against https://cdn.moq.dev/anon... Client: ghcr.io/englishm/moq-interop-runner-moq-dev-js-client:latest docker run --rm \ --network host \ -e RELAY_URL=https://cdn.moq.dev/anon \ -e TLS_DISABLE_VERIFY=false \ ghcr.io/englishm/moq-interop-runner-moq-dev-js-client:latest TAP version 14 # moq-dev-js-client v0.1.0 # Relay: https://cdn.moq.dev/anon 1..6 Non serverCertificateHashes certificate verification is an experimental feature for webtransport node client and not covered by tests and thus may be broken (DO NOT USE IN PRODUCTION) unhandled rejection: 555 | this.closeHook() 556 | delete this.closeHook 557 | } 558 | 559 | // closed before connected 560 | const error = new WebTransportError('Opening handshake failed.') ^ WebTransportError: Opening handshake failed. Symbol.toStringTag: "WebTransportError", at onClose (/app/node_modules/@fails-components/webtransport/lib/session.js:560:21) at (/app/node_modules/@fails-components/webtransport-transport-http3-quiche/lib/clientsocket.js:52:21) at emit (node:events:98:22) at data (node:dgram:168:22) https://cdn.moq.dev/anon no WebTransport after 200ms, attempting WebSocket fallback https://cdn.moq.dev/anon using WebSocket fallback; the user experience may be degraded https://cdn.moq.dev/anon sending client setup ClientSetup { versions: [ 4279086338, 4279086337, 4278190094 ], parameters: Parameters { vars: Map(1) { 2n: 42069n, }, bytes: Map(1) { 7n: Uint8Array(11) [ 109, 111, 113, 45, 108, 105, 116, 101, 45, 106, 115 ], }, size: [Getter], setBytes: [Function: setBytes], setVarint: [Function: setVarint], getBytes: [Function: getBytes], getVarint: [Function: getVarint], removeBytes: [Function: removeBytes], removeVarint: [Function: removeVarint], encode: [AsyncFunction: encode], }, encode: [AsyncFunction: encode], } https://cdn.moq.dev/anon received server setup ServerSetup { version: 4279086338, parameters: Parameters { vars: Map {}, bytes: Map {}, size: [Getter], setBytes: [Function: setBytes], setVarint: [Function: setVarint], getBytes: [Function: getBytes], getVarint: [Function: getVarint], removeBytes: [Function: removeBytes], removeVarint: [Function: removeVarint], encode: [AsyncFunction: encode], }, encode: [AsyncFunction: encode], } https://cdn.moq.dev/anon moq-lite session established session stream closed ok 1 - setup-only --- duration_ms: 386 ... unhandled rejection: 201 | this.closed, 202 | ]); 203 | this.#sendStreams.delete(streamId); 204 | }, 205 | }); 206 | this.#incomingBidirectionalStreams.enqueue({ readable: reader, writable: writer }); ^ TypeError: Invalid state: Controller is already closed code: "ERR_INVALID_STATE" at #handleStreamFrame (/app/node_modules/@moq/web-transport-ws/session.js:206:52) at #recvFrame (/app/node_modules/@moq/web-transport-ws/session.js:119:18) at #handleMessage (/app/node_modules/@moq/web-transport-ws/session.js:98:18) Non serverCertificateHashes certificate verification is an experimental feature for webtransport node client and not covered by tests and thus may be broken (DO NOT USE IN PRODUCTION) https://cdn.moq.dev/anon sending client setup ClientSetup { versions: [ 4279086338, 4279086337, 4278190094 ], parameters: Parameters { vars: Map(1) { 2n: 42069n, }, bytes: Map(1) { 7n: Uint8Array(11) [ 109, 111, 113, 45, 108, 105, 116, 101, 45, 106, 115 ], }, size: [Getter], setBytes: [Function: setBytes], setVarint: [Function: setVarint], getBytes: [Function: getBytes], getVarint: [Function: getVarint], removeBytes: [Function: removeBytes], removeVarint: [Function: removeVarint], encode: [AsyncFunction: encode], }, encode: [AsyncFunction: encode], } https://cdn.moq.dev/anon received server setup ServerSetup { version: 4279086338, parameters: Parameters { vars: Map {}, bytes: Map {}, size: [Getter], setBytes: [Function: setBytes], setVarint: [Function: setVarint], getBytes: [Function: getBytes], getVarint: [Function: getVarint], removeBytes: [Function: removeBytes], removeVarint: [Function: removeVarint], encode: [AsyncFunction: encode], }, encode: [AsyncFunction: encode], } https://cdn.moq.dev/anon moq-lite session established announce: prefix= announce: broadcast=moq-test/interop active=true session stream closed ok 2 - announce-only --- duration_ms: 625 ... Non serverCertificateHashes certificate verification is an experimental feature for webtransport node client and not covered by tests and thus may be broken (DO NOT USE IN PRODUCTION) https://cdn.moq.dev/anon sending client setup ClientSetup { versions: [ 4279086338, 4279086337, 4278190094 ], parameters: Parameters { vars: Map(1) { 2n: 42069n, }, bytes: Map(1) { 7n: Uint8Array(11) [ 109, 111, 113, 45, 108, 105, 116, 101, 45, 106, 115 ], }, size: [Getter], setBytes: [Function: setBytes], setVarint: [Function: setVarint], getBytes: [Function: getBytes], getVarint: [Function: getVarint], removeBytes: [Function: removeBytes], removeVarint: [Function: removeVarint], encode: [AsyncFunction: encode], }, encode: [AsyncFunction: encode], } https://cdn.moq.dev/anon received server setup ServerSetup { version: 4279086338, parameters: Parameters { vars: Map {}, bytes: Map {}, size: [Getter], setBytes: [Function: setBytes], setVarint: [Function: setVarint], getBytes: [Function: getBytes], getVarint: [Function: getVarint], removeBytes: [Function: removeBytes], removeVarint: [Function: removeVarint], encode: [AsyncFunction: encode], }, encode: [AsyncFunction: encode], } https://cdn.moq.dev/anon moq-lite session established announce: prefix= announce: broadcast=moq-test/interop active=true announce: broadcast=moq-test/interop active=false session stream closed ok 3 - publish-namespace-done --- duration_ms: 826 ... Non serverCertificateHashes certificate verification is an experimental feature for webtransport node client and not covered by tests and thus may be broken (DO NOT USE IN PRODUCTION) https://cdn.moq.dev/anon sending client setup ClientSetup { versions: [ 4279086338, 4279086337, 4278190094 ], parameters: Parameters { vars: Map(1) { 2n: 42069n, }, bytes: Map(1) { 7n: Uint8Array(11) [ 109, 111, 113, 45, 108, 105, 116, 101, 45, 106, 115 ], }, size: [Getter], setBytes: [Function: setBytes], setVarint: [Function: setVarint], getBytes: [Function: getBytes], getVarint: [Function: getVarint], removeBytes: [Function: removeBytes], removeVarint: [Function: removeVarint], encode: [AsyncFunction: encode], }, encode: [AsyncFunction: encode], } https://cdn.moq.dev/anon received server setup ServerSetup { version: 4279086338, parameters: Parameters { vars: Map {}, bytes: Map {}, size: [Getter], setBytes: [Function: setBytes], setVarint: [Function: setVarint], getBytes: [Function: getBytes], getVarint: [Function: getVarint], removeBytes: [Function: removeBytes], removeVarint: [Function: removeVarint], encode: [AsyncFunction: encode], }, encode: [AsyncFunction: encode], } https://cdn.moq.dev/anon moq-lite session established subscribe start: id=0 broadcast=nonexistent/namespace track=test-track announce: prefix= subscribe error: id=0 broadcast=nonexistent/namespace track=test-track error=Resetstream with code:13 ok 4 - subscribe-error --- duration_ms: 160 ... session stream closed Non serverCertificateHashes certificate verification is an experimental feature for webtransport node client and not covered by tests and thus may be broken (DO NOT USE IN PRODUCTION) https://cdn.moq.dev/anon sending client setup ClientSetup { versions: [ 4279086338, 4279086337, 4278190094 ], parameters: Parameters { vars: Map(1) { 2n: 42069n, }, bytes: Map(1) { 7n: Uint8Array(11) [ 109, 111, 113, 45, 108, 105, 116, 101, 45, 106, 115 ], }, size: [Getter], setBytes: [Function: setBytes], setVarint: [Function: setVarint], getBytes: [Function: getBytes], getVarint: [Function: getVarint], removeBytes: [Function: removeBytes], removeVarint: [Function: removeVarint], encode: [AsyncFunction: encode], }, encode: [AsyncFunction: encode], } https://cdn.moq.dev/anon received server setup ServerSetup { version: 4279086338, parameters: Parameters { vars: Map {}, bytes: Map {}, size: [Getter], setBytes: [Function: setBytes], setVarint: [Function: setVarint], getBytes: [Function: getBytes], getVarint: [Function: getVarint], removeBytes: [Function: removeBytes], removeVarint: [Function: removeVarint], encode: [AsyncFunction: encode], }, encode: [AsyncFunction: encode], } https://cdn.moq.dev/anon moq-lite session established announce: prefix= announce: broadcast=moq-test/interop active=true Non serverCertificateHashes certificate verification is an experimental feature for webtransport node client and not covered by tests and thus may be broken (DO NOT USE IN PRODUCTION) https://cdn.moq.dev/anon sending client setup ClientSetup { versions: [ 4279086338, 4279086337, 4278190094 ], parameters: Parameters { vars: Map(1) { 2n: 42069n, }, bytes: Map(1) { 7n: Uint8Array(11) [ 109, 111, 113, 45, 108, 105, 116, 101, 45, 106, 115 ], }, size: [Getter], setBytes: [Function: setBytes], setVarint: [Function: setVarint], getBytes: [Function: getBytes], getVarint: [Function: getVarint], removeBytes: [Function: removeBytes], removeVarint: [Function: removeVarint], encode: [AsyncFunction: encode], }, encode: [AsyncFunction: encode], } https://cdn.moq.dev/anon received server setup ServerSetup { version: 4279086338, parameters: Parameters { vars: Map {}, bytes: Map {}, size: [Getter], setBytes: [Function: setBytes], setVarint: [Function: setVarint], getBytes: [Function: getBytes], getVarint: [Function: getVarint], removeBytes: [Function: removeBytes], removeVarint: [Function: removeVarint], encode: [AsyncFunction: encode], }, encode: [AsyncFunction: encode], } https://cdn.moq.dev/anon moq-lite session established subscribe start: id=0 broadcast=moq-test/interop track=test-track announce: prefix= publish ok: broadcast=moq-test/interop track=test-track subscribe ok: id=0 broadcast=moq-test/interop track=test-track publish error: broadcast=moq-test/interop track=test-track error=Session closed (on process 1) with code 0 and reason publish done: broadcast=moq-test/interop track=test-track session stream closed subscribe close: id=0 broadcast=moq-test/interop track=test-track session stream closed 40 | type: result.family === 4 ? 'udp4' : 'udp6', 41 | ipv6Only: this.forceIpv6 42 | }) 43 | 44 | this.socketInt.on('error', (evt) => { 45 | this.jsobj.onClientError({ errorcode: 100, error: evt.toString() }) ^ TypeError: undefined is not an object (evaluating 'this.jsobj.onClientError') at (/app/node_modules/@fails-components/webtransport-transport-http3-quiche/lib/clientsocket.js:45:16) at emitError (node:events:43:23) at error (node:dgram:176:22) ok 5 - announce-subscribe --- duration_ms: 2145 ... Non serverCertificateHashes certificate verification is an experimental feature for webtransport node client and not covered by tests and thus may be broken (DO NOT USE IN PRODUCTION) https://cdn.moq.dev/anon sending client setup ClientSetup { versions: [ 4279086338, 4279086337, 4278190094 ], parameters: Parameters { vars: Map(1) { 2n: 42069n, }, bytes: Map(1) { 7n: Uint8Array(11) [ 109, 111, 113, 45, 108, 105, 116, 101, 45, 106, 115 ], }, size: [Getter], setBytes: [Function: setBytes], setVarint: [Function: setVarint], getBytes: [Function: getBytes], getVarint: [Function: getVarint], removeBytes: [Function: removeBytes], removeVarint: [Function: removeVarint], encode: [AsyncFunction: encode], }, encode: [AsyncFunction: encode], } https://cdn.moq.dev/anon received server setup ServerSetup { version: 4279086338, parameters: Parameters { vars: Map {}, bytes: Map {}, size: [Getter], setBytes: [Function: setBytes], setVarint: [Function: setVarint], getBytes: [Function: getBytes], getVarint: [Function: getVarint], removeBytes: [Function: removeBytes], removeVarint: [Function: removeVarint], encode: [AsyncFunction: encode], }, encode: [AsyncFunction: encode], } https://cdn.moq.dev/anon moq-lite session established subscribe start: id=0 broadcast=moq-test/interop track=test-track announce: prefix= subscribe error: id=0 broadcast=moq-test/interop track=test-track error=Resetstream with code:13 Non serverCertificateHashes certificate verification is an experimental feature for webtransport node client and not covered by tests and thus may be broken (DO NOT USE IN PRODUCTION) unhandled rejection: 555 | this.closeHook() 556 | delete this.closeHook 557 | } 558 | 559 | // closed before connected 560 | const error = new WebTransportError('Opening handshake failed.') ^ WebTransportError: Opening handshake failed. Symbol.toStringTag: "WebTransportError", at onClose (/app/node_modules/@fails-components/webtransport/lib/session.js:560:21) at (/app/node_modules/@fails-components/webtransport-transport-http3-quiche/lib/clientsocket.js:52:21) at emit (node:events:98:22) at data (node:dgram:168:22) https://cdn.moq.dev/anon using WebSocket fallback; the user experience may be degraded https://cdn.moq.dev/anon sending client setup ClientSetup { versions: [ 4279086338, 4279086337, 4278190094 ], parameters: Parameters { vars: Map(1) { 2n: 42069n, }, bytes: Map(1) { 7n: Uint8Array(11) [ 109, 111, 113, 45, 108, 105, 116, 101, 45, 106, 115 ], }, size: [Getter], setBytes: [Function: setBytes], setVarint: [Function: setVarint], getBytes: [Function: getBytes], getVarint: [Function: getVarint], removeBytes: [Function: removeBytes], removeVarint: [Function: removeVarint], encode: [AsyncFunction: encode], }, encode: [AsyncFunction: encode], } https://cdn.moq.dev/anon received server setup ServerSetup { version: 4279086338, parameters: Parameters { vars: Map {}, bytes: Map {}, size: [Getter], setBytes: [Function: setBytes], setVarint: [Function: setVarint], getBytes: [Function: getBytes], getVarint: [Function: getVarint], removeBytes: [Function: removeBytes], removeVarint: [Function: removeVarint], encode: [AsyncFunction: encode], }, encode: [AsyncFunction: encode], } https://cdn.moq.dev/anon moq-lite session established session stream closed session stream closed ok 6 - subscribe-before-announce --- duration_ms: 795 ... unhandled rejection: 201 | this.closed, 202 | ]); 203 | this.#sendStreams.delete(streamId); 204 | }, 205 | }); 206 | this.#incomingBidirectionalStreams.enqueue({ readable: reader, writable: writer }); ^ TypeError: Invalid state: Controller is already closed code: "ERR_INVALID_STATE" at #handleStreamFrame (/app/node_modules/@moq/web-transport-ws/session.js:206:52) at #recvFrame (/app/node_modules/@moq/web-transport-ws/session.js:119:18) at #handleMessage (/app/node_modules/@moq/web-transport-ws/session.js:98:18) make[1]: Leaving directory '/home/runner/work/moq-interop-runner/moq-interop-runner/main'