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 https://cdn.moq.dev/anon connected via WebTransport https://cdn.moq.dev/anon negotiated ALPN: moq-lite-04 ok 1 - setup-only --- duration_ms: 365 ... probe stream error 55 | // Adds more data to the buffer, returning true if more data was added. 56 | async #fill() { 57 | if (!this.#reader) { 58 | return false; 59 | } 60 | const result = await this.#reader.read(); ^ error: session error: connection error: closed code: "GenericFailure" at async #fill (/app/node_modules/@moq/net/stream.js:60:43) at async done (/app/node_modules/@moq/net/stream.js:207:29) at async decodeMaybe (/app/node_modules/@moq/net/lite/message.js:46:22) at async runProbe (/app/node_modules/@moq/net/lite/subscriber.js:270:43) https://cdn.moq.dev/anon connected via WebTransport https://cdn.moq.dev/anon negotiated ALPN: moq-lite-04 probe stream error 55 | // Adds more data to the buffer, returning true if more data was added. 56 | async #fill() { 57 | if (!this.#reader) { 58 | return false; 59 | } 60 | const result = await this.#reader.read(); ^ error: session error: connection error: closed code: "GenericFailure" at async #fill (/app/node_modules/@moq/net/stream.js:60:43) at async done (/app/node_modules/@moq/net/stream.js:207:29) at async decodeMaybe (/app/node_modules/@moq/net/lite/message.js:46:22) at async runProbe (/app/node_modules/@moq/net/lite/subscriber.js:270:43) ok 2 - announce-only --- duration_ms: 1322 ... https://cdn.moq.dev/anon connected via WebSocket https://cdn.moq.dev/anon negotiated ALPN: (none) https://cdn.moq.dev/anon sending client setup ClientSetup { versions: [ 4279086338, 4279086337, 4278190094 ], parameters: SetupOptions { 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: SetupOptions { 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], } announce: prefix= announce: broadcast=moq-test/interop active=true announce: broadcast=moq-test/interop active=false ok 3 - publish-namespace-done --- duration_ms: 1274 ... session stream closed fatal error running connection undefined https://cdn.moq.dev/anon connected via WebSocket https://cdn.moq.dev/anon negotiated ALPN: (none) https://cdn.moq.dev/anon sending client setup ClientSetup { versions: [ 4279086338, 4279086337, 4278190094 ], parameters: SetupOptions { 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: SetupOptions { 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], } subscribe start: id=0 broadcast=nonexistent/namespace track=test-track announce: prefix= subscribe error: id=0 broadcast=nonexistent/namespace track=test-track error=RESET_STREAM: 54 abort 527 | #handleResetStream(frame) { 528 | const streamId = frame.id.value.value; 529 | const stream = this.#recvStreams.get(streamId); 530 | if (!stream) 531 | return; 532 | stream.error(new Error(`RESET_STREAM: ${frame.code.value}`)); ^ error: RESET_STREAM: 54 at #handleResetStream (/app/node_modules/@moq/qmux/session.js:532:26) at #recvFrame (/app/node_modules/@moq/qmux/session.js:225:18) at #handleMessage (/app/node_modules/@moq/qmux/session.js:200:22) session stream closed ok 4 - subscribe-error --- duration_ms: 150 ... fatal error running connection undefined https://cdn.moq.dev/anon connected via WebTransport https://cdn.moq.dev/anon negotiated ALPN: moq-lite-04 announce: prefix= announce: broadcast=moq-test/interop active=true https://cdn.moq.dev/anon connected via WebSocket https://cdn.moq.dev/anon negotiated ALPN: (none) https://cdn.moq.dev/anon sending client setup ClientSetup { versions: [ 4279086338, 4279086337, 4278190094 ], parameters: SetupOptions { 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: SetupOptions { 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], } subscribe start: id=0 broadcast=moq-test/interop track=test-track announce: prefix= subscribe ok: id=0 broadcast=moq-test/interop track=test-track publish ok: broadcast=moq-test/interop track=test-track probe stream error 55 | // Adds more data to the buffer, returning true if more data was added. 56 | async #fill() { 57 | if (!this.#reader) { 58 | return false; 59 | } 60 | const result = await this.#reader.read(); ^ error: session error: connection error: closed code: "GenericFailure" at async #fill (/app/node_modules/@moq/net/stream.js:60:43) at async done (/app/node_modules/@moq/net/stream.js:207:29) at async decodeMaybe (/app/node_modules/@moq/net/lite/message.js:46:22) at async runProbe (/app/node_modules/@moq/net/lite/subscriber.js:270:43) subscribe error: id=0 broadcast=moq-test/interop track=test-track error=undefined session stream closed fatal error running connection undefined Failed to decode frame: 48 | } 49 | return new Uint8Array(dst.buffer, dst.byteOffset, dst.byteLength + size); 50 | } 51 | static decode(buffer) { 52 | if (buffer.byteLength < 1) { 53 | throw new Error("Unexpected end of buffer"); ^ error: Unexpected end of buffer at decode (/app/node_modules/@moq/qmux/varint.js:53:23) at decodeQMux (/app/node_modules/@moq/qmux/frame.js:336:30) at #handleMessage (/app/node_modules/@moq/qmux/session.js:198:33) ok 5 - announce-subscribe --- duration_ms: 2093 ... https://cdn.moq.dev/anon connected via WebTransport https://cdn.moq.dev/anon negotiated ALPN: moq-lite-04 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=RESET_STREAM: 0 publish close: broadcast=moq-test/interop track=test-track publish done: broadcast=moq-test/interop track=test-track https://cdn.moq.dev/anon connected via WebSocket https://cdn.moq.dev/anon negotiated ALPN: (none) https://cdn.moq.dev/anon sending client setup ClientSetup { versions: [ 4279086338, 4279086337, 4278190094 ], parameters: SetupOptions { 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: SetupOptions { 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], } session stream closed fatal error running connection undefined unhandled rejection: 495 | ]); 496 | this.#sendStreams.delete(streamId); 497 | this.#maybeDeleteStreamFlow(streamId); 498 | }, 499 | }); 500 | this.#incomingBidirectionalStreams.enqueue({ readable: reader, writable: writer }); ^ TypeError: Invalid state: Controller is already closed code: "ERR_INVALID_STATE" at #handleStreamFrame (/app/node_modules/@moq/qmux/session.js:500:52) at #recvFrame (/app/node_modules/@moq/qmux/session.js:222:18) at #handleMessage (/app/node_modules/@moq/qmux/session.js:200:22) ok 6 - subscribe-before-announce --- duration_ms: 995 ... probe stream error 55 | // Adds more data to the buffer, returning true if more data was added. 56 | async #fill() { 57 | if (!this.#reader) { 58 | return false; 59 | } 60 | const result = await this.#reader.read(); ^ error: session error: connection error: closed code: "GenericFailure" at async #fill (/app/node_modules/@moq/net/stream.js:60:43) at async done (/app/node_modules/@moq/net/stream.js:207:29) at async decodeMaybe (/app/node_modules/@moq/net/lite/message.js:46:22) at async runProbe (/app/node_modules/@moq/net/lite/subscriber.js:270:43) Failed to decode frame: 48 | } 49 | return new Uint8Array(dst.buffer, dst.byteOffset, dst.byteLength + size); 50 | } 51 | static decode(buffer) { 52 | if (buffer.byteLength < 1) { 53 | throw new Error("Unexpected end of buffer"); ^ error: Unexpected end of buffer at decode (/app/node_modules/@moq/qmux/varint.js:53:23) at decodeQMux (/app/node_modules/@moq/qmux/frame.js:336:30) at #handleMessage (/app/node_modules/@moq/qmux/session.js:198:33) make[1]: Leaving directory '/home/runner/work/moq-interop-runner/moq-interop-runner/main'