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/endel/quic-zig-moq-client:latest URL: https://relay:4443 time="2026-10-02T01:23:56Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-10-02T01:23:56Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-10-02T01:23:56Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-10-02T01:23:56Z" level=warning msg="The \"HEX\" variable is not set. Defaulting to a blank string." time="2026-10-02T01:23:56Z" 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: 021b6755d3937ceaa2fe0f1b7adbd8402a03c874f00ceba4a7d458570be37112 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-test-client v0.3.0 test-client-1 | # Relay: https://relay:4443 test-client-1 | # Draft: draft-18 test-client-1 | 1..7 relay-1 | [relay] client 0 connected (WT session 0, moqt-18) relay-1 | [relay] client 0 SETUP received test-client-1 | ok 1 - setup-only test-client-1 | --- test-client-1 | duration_ms: 6 test-client-1 | implementation_version: "quic-zig/0.3.0" test-client-1 | sessions: test-client-1 | client: test-client-1 | moqt_version: "moqt-18" test-client-1 | transport: "webtransport-h3" test-client-1 | ... relay-1 | [relay] client 1 connected (WT session 0, moqt-18) relay-1 | [relay] PUBLISH_NAMESPACE client=1 ns="moq-test/interop/" relay-1 | [relay] client 1 SETUP received relay-1 | [relay] namespace "moq-test/interop/" withdrawn by client 1 test-client-1 | ok 2 - announce-only test-client-1 | --- test-client-1 | duration_ms: 5 test-client-1 | implementation_version: "quic-zig/0.3.0" test-client-1 | sessions: test-client-1 | client: test-client-1 | moqt_version: "moqt-18" test-client-1 | transport: "webtransport-h3" test-client-1 | ... relay-1 | [relay] client 2 connected (WT session 0, moqt-18) relay-1 | [relay] PUBLISH_NAMESPACE client=2 ns="moq-test/interop/" relay-1 | [relay] client 2 SETUP received relay-1 | [relay] namespace "moq-test/interop/" withdrawn by client 2 test-client-1 | ok 3 - publish-namespace-done test-client-1 | --- test-client-1 | duration_ms: 5 test-client-1 | implementation_version: "quic-zig/0.3.0" test-client-1 | sessions: test-client-1 | client: test-client-1 | moqt_version: "moqt-18" test-client-1 | transport: "webtransport-h3" test-client-1 | ... relay-1 | [relay] client 3 connected (WT session 0, moqt-18) relay-1 | [relay] SUBSCRIBE client=3 ns="nonexistent/namespace/" track="test-track" relay-1 | [relay] REQUEST_ERROR → client: code=16 no such namespace relay-1 | [relay] client 3 SETUP received test-client-1 | ok 4 - subscribe-error test-client-1 | --- test-client-1 | duration_ms: 5 test-client-1 | implementation_version: "quic-zig/0.3.0" test-client-1 | sessions: test-client-1 | client: test-client-1 | moqt_version: "moqt-18" test-client-1 | transport: "webtransport-h3" test-client-1 | ... relay-1 | [relay] client 4 connected (WT session 0, moqt-18) relay-1 | [relay] SUBSCRIBE client=4 ns="nonexistent/rendezvous/" track="test-track" relay-1 | [relay] client 4 SETUP received relay-1 | [relay] client 0 gone relay-1 | [relay] client 1 gone relay-1 | [relay] client 2 gone relay-1 | [relay] client 3 gone relay-1 | [relay] rendezvous timeout → client 4 test-client-1 | ok 5 - rendezvous-timeout test-client-1 | --- test-client-1 | duration_ms: 532 test-client-1 | implementation_version: "quic-zig/0.3.0" test-client-1 | sessions: test-client-1 | client: test-client-1 | moqt_version: "moqt-18" test-client-1 | transport: "webtransport-h3" test-client-1 | ... relay-1 | [relay] client 0 connected (WT session 0, moqt-18) relay-1 | [relay] PUBLISH_NAMESPACE client=0 ns="moq-test/interop/" relay-1 | [relay] client 0 SETUP received relay-1 | [relay] client 1 connected (WT session 0, moqt-18) relay-1 | [relay] SUBSCRIBE client=1 ns="moq-test/interop/" track="test-track" relay-1 | [relay] SUBSCRIBE → publisher client 0 ns="moq-test/interop/" track="test-track" relay-1 | [relay] client 1 SETUP received relay-1 | [relay] SUBSCRIBE_OK ← publisher client 0 alias=1 relay-1 | [relay] namespace "moq-test/interop/" withdrawn by client 0 test-client-1 | ok 6 - announce-subscribe test-client-1 | --- test-client-1 | duration_ms: 8 test-client-1 | implementation_version: "quic-zig/0.3.0" test-client-1 | sessions: test-client-1 | client: test-client-1 | moqt_version: "moqt-18" test-client-1 | transport: "webtransport-h3" test-client-1 | ... relay-1 | [relay] client 2 connected (WT session 0, moqt-18) relay-1 | [relay] SUBSCRIBE client=2 ns="moq-test/interop/" track="test-track" relay-1 | [relay] REQUEST_ERROR → client: code=16 no such namespace relay-1 | [relay] client 2 SETUP received test-client-1 | ok 7 - subscribe-before-announce test-client-1 | --- test-client-1 | duration_ms: 4 test-client-1 | message: "rejected pending subscription (allowed)" test-client-1 | implementation_version: "quic-zig/0.3.0" test-client-1 | sessions: test-client-1 | client: test-client-1 | moqt_version: "moqt-18" test-client-1 | transport: "webtransport-h3" 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'