make[1]: Entering directory '/home/runner/work/moq-interop-runner/moq-interop-runner/main' rm -rf mlog/ mkdir -p mlog/relay mlog/client Running interop tests... Relay: moq-dev-rs-interop:latest Client: ghcr.io/englishm/moq-interop-runner-moq-dev-js-client:latest URL: https://relay:4443 time="2026-09-02T00:35:43Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-09-02T00:35:43Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-09-02T00:35:43Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-09-02T00:35:43Z" level=warning msg="The \"HEX\" variable is not set. Defaulting to a blank string." time="2026-09-02T00:35:43Z" level=warning msg="The \"HEX\" variable is not set. Defaulting to a blank string." Container main-relay-1 Recreate Container main-relay-1 Recreated Attaching to relay-1, test-client-1 relay-1 | 2026-09-02T00:35:44.004223Z  WARN moq_native::bind: UDP receive buffer is smaller than requested; raise `net.core.rmem_max` or expect packet loss under load wanted=8388608 granted=1048576 relay-1 | 2026-09-02T00:35:44.004247Z  WARN moq_native::bind: UDP send buffer is smaller than requested; raise `net.core.wmem_max` or expect packet loss under load wanted=8388608 granted=212992 relay-1 | 2026-09-02T00:35:44.006723Z  INFO moq_relay::cluster: cluster initialized origin_id=4082932786771624 configured=false relay-1 | 2026-09-02T00:35:44.007847Z  INFO moq_relay::relay: listening addr=[::]:4443 relay-1 | 2026-09-02T00:35:44.007875Z  INFO moq_relay::cluster: no cluster peers configured; running standalone relay-1 | 2026-09-02T00:35:44.008061Z  INFO moq_native::jemalloc: jemalloc profiling compiled in but not active. Set MALLOC_CONF=prof:true,prof_active:true at startup to enable test-client-1 | TAP version 14 test-client-1 | # moq-dev-js-client v0.1.0 test-client-1 | # Relay: https://relay:4443 test-client-1 | 1..6 relay-1 | 2026-09-02T00:35:49.878368Z  INFO conn{id=0}: moq_relay::connection: session accepted transport=quic role=None tier= root= publish= subscribe= relay-1 | 2026-09-02T00:35:49.878446Z  INFO conn{id=0}: moq_relay::connection: negotiated version=moq-lite-04 transport=quic test-client-1 | https://relay:4443/ connected via WebTransport test-client-1 | https://relay:4443/ negotiated ALPN: moq-lite-04 relay-1 | 2026-09-02T00:35:49.881097Z  WARN moq_relay::relay: connection closed err=transport: webtransport error: closed: code=0 reason= relay-1 | 2026-09-02T00:35:49.881175Z  INFO conn{id=0}: moq_net::lite::session: session terminated test-client-1 | ok 1 - setup-only test-client-1 | --- test-client-1 | duration_ms: 85 test-client-1 | ... test-client-1 | probe stream error error: session error: connection error: closed test-client-1 | code: "GenericFailure" test-client-1 | test-client-1 | test-client-1 | announce: prefix= relay-1 | 2026-09-02T00:35:49.897408Z  INFO conn{id=1}: moq_relay::connection: session accepted transport=quic role=None tier= root= publish= subscribe= relay-1 | 2026-09-02T00:35:49.897447Z  INFO conn{id=1}: moq_relay::connection: negotiated version=moq-lite-04 transport=quic test-client-1 | https://relay:4443/ connected via WebTransport test-client-1 | https://relay:4443/ negotiated ALPN: moq-lite-04 test-client-1 | announce: prefix= test-client-1 | announce: broadcast=moq-test/interop active=true relay-1 | 2026-09-02T00:35:50.398697Z  WARN moq_relay::relay: connection closed err=transport: webtransport error: closed: code=0 reason= relay-1 | 2026-09-02T00:35:50.398755Z  INFO conn{id=1}: moq_net::lite::session: session terminated test-client-1 | probe stream error 55 | // Adds more data to the buffer, returning true if more data was added. test-client-1 | 56 | async #fill() { test-client-1 | 57 | if (!this.#reader) { test-client-1 | 58 | return false; test-client-1 | 59 | } test-client-1 | 60 | const result = await this.#reader.read(); test-client-1 | ^ test-client-1 | error: session error: connection error: closed test-client-1 | code: "GenericFailure" test-client-1 | test-client-1 | at async #fill (/app/node_modules/@moq/net/stream.js:60:43) test-client-1 | at async done (/app/node_modules/@moq/net/stream.js:207:29) test-client-1 | at async decodeMaybe (/app/node_modules/@moq/net/lite/message.js:46:22) test-client-1 | at async runProbe (/app/node_modules/@moq/net/lite/subscriber.js:270:43) test-client-1 | test-client-1 | ok 2 - announce-only test-client-1 | --- test-client-1 | duration_ms: 517 test-client-1 | ... relay-1 | 2026-09-02T00:35:50.402484Z  INFO conn{id=2}: moq_relay::connection: session accepted transport=quic role=None tier= root= publish= subscribe= relay-1 | 2026-09-02T00:35:50.402520Z  INFO conn{id=2}: moq_relay::connection: negotiated version=moq-lite-04 transport=quic test-client-1 | https://relay:4443/ connected via WebTransport test-client-1 | https://relay:4443/ negotiated ALPN: moq-lite-04 test-client-1 | announce: prefix= test-client-1 | announce: broadcast=moq-test/interop active=true relay-1 | 2026-09-02T00:35:50.403508Z  WARN conn{id=2}: moq_net::model::origin_impl: replacing a live broadcast from a different publisher broadcast=moq-test/interop test-client-1 | announce: broadcast=moq-test/interop active=false relay-1 | 2026-09-02T00:35:51.103672Z  WARN moq_relay::relay: connection closed err=transport: webtransport error: closed: code=0 reason= relay-1 | 2026-09-02T00:35:51.103719Z  INFO conn{id=2}: moq_net::lite::session: session terminated test-client-1 | probe stream error 55 | // Adds more data to the buffer, returning true if more data was added. test-client-1 | 56 | async #fill() { test-client-1 | 57 | if (!this.#reader) { test-client-1 | 58 | return false; test-client-1 | 59 | } test-client-1 | 60 | const result = await this.#reader.read(); test-client-1 | ^ test-client-1 | error: session error: connection error: closed test-client-1 | code: "GenericFailure" test-client-1 | test-client-1 | at async #fill (/app/node_modules/@moq/net/stream.js:60:43) test-client-1 | at async done (/app/node_modules/@moq/net/stream.js:207:29) test-client-1 | at async decodeMaybe (/app/node_modules/@moq/net/lite/message.js:46:22) test-client-1 | at async runProbe (/app/node_modules/@moq/net/lite/subscriber.js:270:43) test-client-1 | test-client-1 | ok 3 - publish-namespace-done test-client-1 | --- test-client-1 | duration_ms: 705 test-client-1 | ... test-client-1 | https://relay:4443/ connected via WebTransport test-client-1 | https://relay:4443/ negotiated ALPN: moq-lite-04 relay-1 | 2026-09-02T00:35:51.107414Z  INFO conn{id=3}: moq_relay::connection: session accepted transport=quic role=None tier= root= publish= subscribe= relay-1 | 2026-09-02T00:35:51.107447Z  INFO conn{id=3}: moq_relay::connection: negotiated version=moq-lite-04 transport=quic test-client-1 | subscribe start: id=0 broadcast=nonexistent/namespace track=test-track test-client-1 | announce: prefix= relay-1 | 2026-09-02T00:35:51.112243Z  INFO conn{id=3}: moq_net::lite::publisher: subscribed started id=0 broadcast=nonexistent/namespace track=test-track relay-1 | 2026-09-02T00:35:51.112280Z  WARN conn{id=3}: moq_net::lite::publisher: subscribed error id=0 broadcast=nonexistent/namespace track=test-track err=unroutable test-client-1 | subscribe error: id=0 broadcast=nonexistent/namespace track=test-track error=RESET_STREAM: 30 relay-1 | 2026-09-02T00:35:51.113059Z  WARN moq_relay::relay: connection closed err=transport: webtransport error: closed: code=0 reason= relay-1 | 2026-09-02T00:35:51.113212Z  INFO conn{id=3}: moq_net::lite::session: session terminated test-client-1 | probe stream error 55 | // Adds more data to the buffer, returning true if more data was added. test-client-1 | 56 | async #fill() { test-client-1 | 57 | if (!this.#reader) { test-client-1 | 58 | return false; test-client-1 | 59 | } test-client-1 | 60 | const result = await this.#reader.read(); test-client-1 | ^ test-client-1 | error: session error: connection error: closed test-client-1 | code: "GenericFailure" test-client-1 | test-client-1 | at async #fill (/app/node_modules/@moq/net/stream.js:60:43) test-client-1 | at async done (/app/node_modules/@moq/net/stream.js:207:29) test-client-1 | at async decodeMaybe (/app/node_modules/@moq/net/lite/message.js:46:22) test-client-1 | at async runProbe (/app/node_modules/@moq/net/lite/subscriber.js:270:43) test-client-1 | test-client-1 | ok 4 - subscribe-error test-client-1 | --- test-client-1 | duration_ms: 9 test-client-1 | ... relay-1 | 2026-09-02T00:35:51.116243Z  INFO conn{id=4}: moq_relay::connection: session accepted transport=quic role=None tier= root= publish= subscribe= relay-1 | 2026-09-02T00:35:51.116277Z  INFO conn{id=4}: moq_relay::connection: negotiated version=moq-lite-04 transport=quic test-client-1 | https://relay:4443/ connected via WebTransport test-client-1 | https://relay:4443/ negotiated ALPN: moq-lite-04 test-client-1 | announce: prefix= test-client-1 | announce: broadcast=moq-test/interop active=true relay-1 | 2026-09-02T00:35:51.420049Z  INFO conn{id=5}: moq_relay::connection: session accepted transport=quic role=None tier= root= publish= subscribe= relay-1 | 2026-09-02T00:35:51.420099Z  INFO conn{id=5}: moq_relay::connection: negotiated version=moq-lite-04 transport=quic test-client-1 | https://relay:4443/ connected via WebTransport test-client-1 | https://relay:4443/ negotiated ALPN: moq-lite-04 test-client-1 | subscribe start: id=0 broadcast=moq-test/interop track=test-track test-client-1 | announce: prefix= relay-1 | 2026-09-02T00:35:51.421546Z  INFO conn{id=5}: moq_net::lite::publisher: subscribed started id=0 broadcast=moq-test/interop track=test-track relay-1 | 2026-09-02T00:35:51.421780Z  INFO conn{id=4}: moq_net::lite::subscriber: subscribe started id=0 broadcast=moq-test/interop track=test-track test-client-1 | subscribe ok: id=0 broadcast=moq-test/interop track=test-track test-client-1 | publish ok: broadcast=moq-test/interop track=test-track relay-1 | 2026-09-02T00:35:52.922157Z  WARN moq_relay::relay: connection closed err=transport: webtransport error: closed: code=0 reason= relay-1 | 2026-09-02T00:35:52.922230Z  WARN conn{id=4}: moq_net::model::track: track::Producer dropped without finish() or abort() track=test-track relay-1 | 2026-09-02T00:35:52.922243Z  INFO conn{id=4}: moq_net::lite::session: session terminated test-client-1 | probe stream error 55 | // Adds more data to the buffer, returning true if more data was added. test-client-1 | 56 | async #fill() { test-client-1 | 57 | if (!this.#reader) { test-client-1 | 58 | return false; test-client-1 | 59 | } test-client-1 | 60 | const result = await this.#reader.read(); test-client-1 | ^ test-client-1 | error: session error: connection error: closed test-client-1 | code: "GenericFailure" test-client-1 | test-client-1 | at async #fill (/app/node_modules/@moq/net/stream.js:60:43) test-client-1 | at async done (/app/node_modules/@moq/net/stream.js:207:29) test-client-1 | at async decodeMaybe (/app/node_modules/@moq/net/lite/message.js:46:22) test-client-1 | at async runProbe (/app/node_modules/@moq/net/lite/subscriber.js:270:43) test-client-1 | test-client-1 | subscribe close: id=0 broadcast=moq-test/interop track=test-track relay-1 | 2026-09-02T00:35:52.922856Z  WARN moq_relay::relay: connection closed err=transport: webtransport error: closed: code=0 reason= relay-1 | 2026-09-02T00:35:52.922937Z  INFO conn{id=5}: moq_net::lite::session: session terminated test-client-1 | probe stream error 55 | // Adds more data to the buffer, returning true if more data was added. test-client-1 | 56 | async #fill() { test-client-1 | 57 | if (!this.#reader) { test-client-1 | 58 | return false; test-client-1 | 59 | } test-client-1 | 60 | const result = await this.#reader.read(); test-client-1 | ^ test-client-1 | error: session error: connection error: closed test-client-1 | code: "GenericFailure" test-client-1 | test-client-1 | at async #fill (/app/node_modules/@moq/net/stream.js:60:43) test-client-1 | at async done (/app/node_modules/@moq/net/stream.js:207:29) test-client-1 | at async decodeMaybe (/app/node_modules/@moq/net/lite/message.js:46:22) test-client-1 | at async runProbe (/app/node_modules/@moq/net/lite/subscriber.js:270:43) test-client-1 | test-client-1 | ok 5 - announce-subscribe test-client-1 | --- test-client-1 | duration_ms: 1910 test-client-1 | ... relay-1 | 2026-09-02T00:35:53.027351Z  INFO conn{id=6}: moq_relay::connection: session accepted transport=quic role=None tier= root= publish= subscribe= relay-1 | 2026-09-02T00:35:53.027393Z  INFO conn{id=6}: moq_relay::connection: negotiated version=moq-lite-04 transport=quic test-client-1 | https://relay:4443/ connected via WebTransport test-client-1 | https://relay:4443/ negotiated ALPN: moq-lite-04 test-client-1 | subscribe start: id=0 broadcast=moq-test/interop track=test-track test-client-1 | announce: prefix= relay-1 | 2026-09-02T00:35:53.028724Z  INFO conn{id=6}: moq_net::lite::publisher: subscribed started id=0 broadcast=moq-test/interop track=test-track test-client-1 | subscribe ok: id=0 broadcast=moq-test/interop track=test-track test-client-1 | publish close: broadcast=moq-test/interop track=test-track test-client-1 | publish done: broadcast=moq-test/interop track=test-track relay-1 | 2026-09-02T00:35:53.531152Z  INFO conn{id=7}: moq_relay::connection: session accepted transport=quic role=None tier= root= publish= subscribe= relay-1 | 2026-09-02T00:35:53.531195Z  INFO conn{id=7}: moq_relay::connection: negotiated version=moq-lite-04 transport=quic test-client-1 | https://relay:4443/ connected via WebTransport test-client-1 | https://relay:4443/ negotiated ALPN: moq-lite-04 test-client-1 | announce: prefix= test-client-1 | announce: broadcast=moq-test/interop active=true relay-1 | 2026-09-02T00:35:53.532619Z  WARN conn{id=7}: moq_net::model::origin_impl: replacing a live broadcast from a different publisher broadcast=moq-test/interop relay-1 | 2026-09-02T00:35:53.532757Z  WARN conn{id=6}: moq_net::lite::publisher: subscribed error id=0 broadcast=moq-test/interop track=test-track err=dropped test-client-1 | subscribe error: id=0 broadcast=moq-test/interop track=test-track error=RESET_STREAM: 24 relay-1 | 2026-09-02T00:35:53.533227Z  WARN moq_relay::relay: connection closed err=transport: webtransport error: closed: code=0 reason= relay-1 | 2026-09-02T00:35:53.533284Z  INFO conn{id=7}: moq_net::lite::session: session terminated test-client-1 | probe stream error 55 | // Adds more data to the buffer, returning true if more data was added. test-client-1 | 56 | async #fill() { test-client-1 | 57 | if (!this.#reader) { test-client-1 | 58 | return false; test-client-1 | 59 | } test-client-1 | 60 | const result = await this.#reader.read(); test-client-1 | ^ test-client-1 | error: session error: connection error: closed test-client-1 | code: "GenericFailure" test-client-1 | test-client-1 | at async #fill (/app/node_modules/@moq/net/stream.js:60:43) test-client-1 | at async done (/app/node_modules/@moq/net/stream.js:207:29) test-client-1 | at async decodeMaybe (/app/node_modules/@moq/net/lite/message.js:46:22) test-client-1 | at async runProbe (/app/node_modules/@moq/net/lite/subscriber.js:270:43) test-client-1 | relay-1 | 2026-09-02T00:35:53.533896Z  WARN moq_relay::relay: connection closed err=transport: webtransport error: closed: code=0 reason= relay-1 | 2026-09-02T00:35:53.533971Z  INFO conn{id=6}: moq_net::lite::session: session terminated test-client-1 | probe stream error 55 | // Adds more data to the buffer, returning true if more data was added. test-client-1 | 56 | async #fill() { test-client-1 | 57 | if (!this.#reader) { test-client-1 | 58 | return false; test-client-1 | 59 | } test-client-1 | 60 | const result = await this.#reader.read(); test-client-1 | ^ test-client-1 | error: session error: connection error: closed test-client-1 | code: "GenericFailure" test-client-1 | test-client-1 | at async #fill (/app/node_modules/@moq/net/stream.js:60:43) test-client-1 | at async done (/app/node_modules/@moq/net/stream.js:207:29) test-client-1 | at async decodeMaybe (/app/node_modules/@moq/net/lite/message.js:46:22) test-client-1 | at async runProbe (/app/node_modules/@moq/net/lite/subscriber.js:270:43) test-client-1 | test-client-1 | ok 6 - subscribe-before-announce test-client-1 | --- test-client-1 | duration_ms: 511 test-client-1 | ... test-client-1 exited with code 0 Aborting on container exit... Container main-test-client-1 Stopping Container main-test-client-1 Stopped Container main-relay-1 Stopping Container main-relay-1 Stopped Test results in mlog/ make[1]: Leaving directory '/home/runner/work/moq-interop-runner/moq-interop-runner/main'