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: ghcr.io/endel/quic-zig-moq-relay:latest Client: ghcr.io/englishm/moq-interop-runner-moq-dev-js-client:latest URL: https://relay:4443 time="2026-09-28T00:43:12Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-09-28T00:43:12Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-09-28T00:43:12Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-09-28T00:43:12Z" level=warning msg="The \"HEX\" variable is not set. Defaulting to a blank string." time="2026-09-28T00:43:12Z" level=warning msg="The \"HEX\" variable is not set. Defaulting to a blank string." Container main-relay-1 Recreate Container main-relay-1 Recreated Container main-test-client-1 Recreate Container main-test-client-1 Recreated Attaching to relay-1, test-client-1 relay-1 | relay-1 | === MoQ Relay (draft-17/18, WebTransport + QUIC) === relay-1 | Certificate SHA-256: 693ef5fbb706a85e85be738b9c021b6f26c4d9e391feaa4e282d6a6d9327caef relay-1 | relay-1 | Listening on https://0.0.0.0:4443 relay-1 | Video demo: https://127.0.0.1:4443/moq_video.html relay-1 | Clock demo: https://127.0.0.1:4443/moq.html relay-1 | 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 | [relay] client 0 connected (WT session 0, moqt-18) test-client-1 | https://relay:4443/ connected via WebTransport test-client-1 | https://relay:4443/ negotiated ALPN: moqt-18 relay-1 | [relay] client 0 SETUP received relay-1 | [relay] client 0 gone test-client-1 | ok 1 - setup-only test-client-1 | --- test-client-1 | duration_ms: 198 test-client-1 | ... relay-1 | [relay] client 0 connected (WT session 0, moqt-18) test-client-1 | https://relay:4443/ connected via WebTransport test-client-1 | https://relay:4443/ negotiated ALPN: moqt-18 relay-1 | [relay] client 0 SETUP received relay-1 | [relay] PUBLISH_NAMESPACE client=0 ns="moq-test/interop/" relay-1 | [relay] client 0 gone test-client-1 | announce failed: broadcast=moq-test/interop error=session error: connection error: closed test-client-1 | ok 2 - announce-only test-client-1 | --- test-client-1 | duration_ms: 607 test-client-1 | ... relay-1 | [relay] client 0 connected (WT session 0, moqt-18) test-client-1 | https://relay:4443/ connected via WebTransport test-client-1 | https://relay:4443/ negotiated ALPN: moqt-18 relay-1 | [relay] client 0 SETUP received relay-1 | [relay] PUBLISH_NAMESPACE client=0 ns="moq-test/interop/" relay-1 | [relay] client 0 gone test-client-1 | ok 3 - publish-namespace-done test-client-1 | --- test-client-1 | duration_ms: 806 test-client-1 | ... relay-1 | [relay] client 0 connected (WT session 0, moqt-18) test-client-1 | https://relay:4443/ connected via WebTransport test-client-1 | https://relay:4443/ negotiated ALPN: moqt-18 relay-1 | [relay] client 0 SETUP received test-client-1 | subscribe start: id=0 broadcast=nonexistent/namespace track=test-track test-client-1 | subscribe written: id=0 broadcast=nonexistent/namespace track=test-track relay-1 | [relay] SUBSCRIBE client=0 ns="nonexistent/namespace/" track="test-track" relay-1 | [relay] REQUEST_ERROR → client: code=16 no such namespace test-client-1 | subscribe error: id=0 broadcast=nonexistent/namespace track=test-track error=SUBSCRIBE error: code=16 reason=no such namespace relay-1 | [relay] client 0 gone test-client-1 | ok 4 - subscribe-error test-client-1 | --- test-client-1 | duration_ms: 107 test-client-1 | ... relay-1 | [relay] client 0 connected (WT session 0, moqt-18) test-client-1 | https://relay:4443/ connected via WebTransport test-client-1 | https://relay:4443/ negotiated ALPN: moqt-18 relay-1 | [relay] client 0 SETUP received relay-1 | [relay] PUBLISH_NAMESPACE client=0 ns="moq-test/interop/" relay-1 | [relay] client 1 connected (WT session 0, moqt-18) test-client-1 | https://relay:4443/ connected via WebTransport test-client-1 | https://relay:4443/ negotiated ALPN: moqt-18 relay-1 | [relay] client 1 SETUP received test-client-1 | subscribe start: id=0 broadcast=moq-test/interop track=test-track relay-1 | [relay] SUBSCRIBE client=1 ns="moq-test/interop/" track="test-track" test-client-1 | subscribe written: id=0 broadcast=moq-test/interop track=test-track relay-1 | [relay] SUBSCRIBE → publisher client 0 ns="moq-test/interop/" track="test-track" test-client-1 | error processing bidi stream 81 | if (size > MAX_READ_SIZE) { test-client-1 | 82 | throw new Error(`read size ${size} exceeds max size ${MAX_READ_SIZE}`); test-client-1 | 83 | } test-client-1 | 84 | while (this.#buffer.byteLength < size) { test-client-1 | 85 | if (!(await this.#fill())) { test-client-1 | 86 | throw new Error("unexpected end of stream"); test-client-1 | ^ test-client-1 | error: unexpected end of stream test-client-1 | at #fillTo (/app/node_modules/@moq/net/stream.js:86:27) test-client-1 | at async #readLeadingOnes (/app/node_modules/@moq/net/stream.js:175:20) test-client-1 | relay-1 | [relay] client 0 gone test-client-1 | subscribe error: id=0 broadcast=moq-test/interop track=test-track error=SUBSCRIBE error: code=0 reason=publisher gone relay-1 | [relay] client 1 gone test-client-1 | ok 5 - announce-subscribe test-client-1 | --- test-client-1 | duration_ms: 2014 test-client-1 | ... relay-1 | [relay] client 0 connected (WT session 0, moqt-18) test-client-1 | https://relay:4443/ connected via WebTransport test-client-1 | https://relay:4443/ negotiated ALPN: moqt-18 relay-1 | [relay] client 0 SETUP received test-client-1 | subscribe start: id=0 broadcast=moq-test/interop track=test-track test-client-1 | subscribe written: id=0 broadcast=moq-test/interop track=test-track relay-1 | [relay] SUBSCRIBE client=0 ns="moq-test/interop/" track="test-track" relay-1 | [relay] REQUEST_ERROR → client: code=16 no such namespace test-client-1 | subscribe error: id=0 broadcast=moq-test/interop track=test-track error=SUBSCRIBE error: code=16 reason=no such namespace relay-1 | [relay] client 1 connected (WT session 0, moqt-18) test-client-1 | https://relay:4443/ connected via WebTransport test-client-1 | https://relay:4443/ negotiated ALPN: moqt-18 relay-1 | [relay] client 1 SETUP received relay-1 | [relay] client 1 gone test-client-1 | announce failed: broadcast=moq-test/interop error=session error: connection error: closed relay-1 | [relay] client 0 gone test-client-1 | ok 6 - subscribe-before-announce test-client-1 | --- test-client-1 | duration_ms: 711 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'