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: moqx-interop:latest Client: ghcr.io/englishm/moq-interop-runner-moq-test-client:latest URL: https://relay:4443 time="2026-10-02T01:37:37Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-10-02T01:37:37Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-10-02T01:37:37Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-10-02T01:37:37Z" level=warning msg="The \"HEX\" variable is not set. Defaulting to a blank string." time="2026-10-02T01:37:37Z" 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 | note: jemalloc enabled (LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.2) relay-1 | I1002 01:37:37.884434 1 main.cpp:98] moqx v0.3.5-91-ge49af0a4 starting relay-1 | W1002 01:37:37.885145 1 main.cpp:111] Picoquic listener 'relay-pico': service 'default' match[1] has prefix path '/' — pico listeners only support exact path routing; clients using this prefix may fail to connect. relay-1 | W1002 01:37:37.889240 1 QuicServerWorker.cpp:1383] HostId is already set to 0 relay-1 | W1002 01:37:37.889303 1 QuicServerWorker.cpp:1383] HostId is already set to 0 relay-1 | W1002 01:37:37.889368 1 QuicServerWorker.cpp:1383] HostId is already set to 0 relay-1 | W1002 01:37:37.889421 1 QuicServerWorker.cpp:1383] HostId is already set to 0 relay-1 | W1002 01:37:37.889947 1 MoQPicoQuicShardedServer.cpp:113] Sharding picoquic across 4 threads; forcing disableMigration=true (SO_REUSEPORT cannot route a migrated connection's packets to the shard holding its state) relay-1 | I1002 01:37:37.891298 13 MoQPicoServerBase.cpp:351] Registered picoquic congestion control algorithms for name lookup relay-1 | I1002 01:37:37.891327 13 MoQPicoQuicEventBaseServer.cpp:59] Starting MoQPicoQuicEventBaseServer on 0.0.0.0:4434 relay-1 | I1002 01:37:37.891376 13 PicoQuicSocketHandler.cpp:222] PicoQuicSocketHandler started on 0.0.0.0:4434 gso=1 relay-1 | I1002 01:37:37.892086 14 MoQPicoServerBase.cpp:351] Registered picoquic congestion control algorithms for name lookup relay-1 | I1002 01:37:37.892104 14 MoQPicoQuicEventBaseServer.cpp:59] Starting MoQPicoQuicEventBaseServer on 0.0.0.0:4434 relay-1 | I1002 01:37:37.892163 14 PicoQuicSocketHandler.cpp:222] PicoQuicSocketHandler started on 0.0.0.0:4434 gso=1 relay-1 | I1002 01:37:37.893077 15 MoQPicoServerBase.cpp:351] Registered picoquic congestion control algorithms for name lookup relay-1 | I1002 01:37:37.893091 15 MoQPicoQuicEventBaseServer.cpp:59] Starting MoQPicoQuicEventBaseServer on 0.0.0.0:4434 relay-1 | I1002 01:37:37.893142 15 PicoQuicSocketHandler.cpp:222] PicoQuicSocketHandler started on 0.0.0.0:4434 gso=1 relay-1 | I1002 01:37:37.893918 16 MoQPicoServerBase.cpp:351] Registered picoquic congestion control algorithms for name lookup relay-1 | I1002 01:37:37.893935 16 MoQPicoQuicEventBaseServer.cpp:59] Starting MoQPicoQuicEventBaseServer on 0.0.0.0:4434 relay-1 | I1002 01:37:37.893994 16 PicoQuicSocketHandler.cpp:222] PicoQuicSocketHandler started on 0.0.0.0:4434 gso=1 relay-1 | I1002 01:37:37.895650 1 main.cpp:226] Admin server listening on 0.0.0.0:8000 test-client-1 | TAP version 14 test-client-1 | # moq-test-client v0.1.13 test-client-1 | # Relay: https://relay:4443/ test-client-1 | 1..8 test-client-1 | 2026-10-02T01:37:43.488286Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:40253 dual_stack=true test-client-1 | 2026-10-02T01:37:43.491932Z  INFO moq_test_client::scenarios: SETUP exchange completed successfully test-client-1 | ok 1 - setup-only test-client-1 | --- test-client-1 | duration_ms: 4 test-client-1 | connection_id: 0ac307d3a555f97f5c6edd76b5264790 test-client-1 | ... relay-1 | E20261002 01:37:43.492089 16 HQControlCodec.h:58] Unexpected control stream EOF relay-1 | E20261002 01:37:43.492164 16 HQSession.cpp:3170] Got error on control stream error=HTTP: Critical stream was closed streamID=2 sess=proto=h3, UA=, client CID=90f531feb00849eb, server CID=400000caa580664e, downstream=172.18.0.3:40253, 0.0.0.0:4443=local, drain=none relay-1 | E1002 01:37:43.492238 16 MoQServer.h:198] proxygen::HTTPException: Got error=ApplicationError: 260, HTTP error on control stream test-client-1 | 2026-10-02T01:37:43.492534Z  WARN web_transport_quinn::session: failed to read capsule e=UnexpectedEnd test-client-1 | 2026-10-02T01:37:43.492931Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:48037 dual_stack=true test-client-1 | 2026-10-02T01:37:43.495078Z  INFO moq_test_client::scenarios: Sending PUBLISH_NAMESPACE for: moq-test/interop test-client-1 | 2026-10-02T01:37:45.496948Z  INFO moq_test_client::scenarios: PUBLISH_NAMESPACE succeeded (REQUEST_OK received, waiting for subscribers) test-client-1 | ok 2 - publish-namespace-only test-client-1 | --- test-client-1 | duration_ms: 2005 test-client-1 | connection_id: 8ec6cd4808870fd113e98d4a58e7aea9 test-client-1 | ... test-client-1 | 2026-10-02T01:37:45.497867Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:56725 dual_stack=true relay-1 | E20261002 01:37:45.498093 15 HQControlCodec.h:58] Unexpected control stream EOF relay-1 | E20261002 01:37:45.498152 15 HQSession.cpp:3170] Got error on control stream error=HTTP: Critical stream was closed streamID=2 sess=proto=h3, UA=, client CID=8982210e6f264bc7, server CID=40000099e677da19, downstream=172.18.0.3:48037, 0.0.0.0:4443=local, drain=none relay-1 | E1002 01:37:45.498247 15 MoQServer.h:198] proxygen::HTTPException: Got error=ApplicationError: 260, HTTP error on control stream test-client-1 | 2026-10-02T01:37:45.498568Z  WARN web_transport_quinn::session: failed to read capsule e=UnexpectedEnd test-client-1 | 2026-10-02T01:37:45.500586Z  INFO moq_test_client::scenarios: Subscribing to non-existent track: nonexistent/namespace/test-track test-client-1 | 2026-10-02T01:37:45.501099Z  WARN moq_test_client::scenarios: Got error but not clearly 'not found': closed, code=16. Relay may use different error text. test-client-1 | ok 3 - subscribe-error relay-1 | E20261002 01:37:45.501269 16 HQControlCodec.h:58] Unexpected control stream EOF test-client-1 | --- test-client-1 | duration_ms: 4 test-client-1 | connection_id: fc22cb5952626a17476871c28d8d3cc9 test-client-1 | ... relay-1 | E20261002 01:37:45.501358 16 HQSession.cpp:3170] Got error on control stream error=HTTP: Critical stream was closed streamID=2 sess=proto=h3, UA=, client CID=42c1a3450974cf6a, server CID=400000ce8cfb39b7, downstream=172.18.0.3:56725, 0.0.0.0:4443=local, drain=none relay-1 | E1002 01:37:45.501424 16 MoQServer.h:198] proxygen::HTTPException: Got error=ApplicationError: 260, HTTP error on control stream test-client-1 | 2026-10-02T01:37:45.501679Z  WARN web_transport_quinn::session: failed to read capsule e=UnexpectedEnd test-client-1 | 2026-10-02T01:37:45.502165Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:48459 dual_stack=true test-client-1 | 2026-10-02T01:37:45.504774Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:55955 dual_stack=true test-client-1 | 2026-10-02T01:37:45.506632Z  INFO moq_test_client::scenarios: Publisher sending PUBLISH_NAMESPACE: moq-test/interop test-client-1 | 2026-10-02T01:37:45.506642Z  INFO moq_test_client::scenarios: Subscriber subscribing to track: moq-test/interop/test-track test-client-1 | ok 4 - publish-namespace-subscribe test-client-1 | --- test-client-1 | duration_ms: 3006 test-client-1 | publisher_connection_id: 11ed508d783bb32352f48e63643898e9 test-client-1 | subscriber_connection_id: 5c13139ab59c3c50aa02cc11ee8b3c1c test-client-1 | ... test-client-1 | 2026-10-02T01:37:48.507588Z  INFO moq_test_client::scenarios: Test timeout reached - subscription routing may still be in progress relay-1 | E20261002 01:37:48.507983 13 HQControlCodec.h:58] Unexpected control stream EOF relay-1 | E20261002 01:37:48.508041 13 HQSession.cpp:3170] Got error on control stream error=HTTP: Critical stream was closed streamID=2 sess=proto=h3, UA=, client CID=bc7f2d3f8f61a523, server CID=4000001935e6c315, downstream=172.18.0.3:48459, 0.0.0.0:4443=local, drain=none relay-1 | E20261002 01:37:48.508093 13 HQControlCodec.h:58] Unexpected control stream EOF relay-1 | E20261002 01:37:48.508107 13 HQSession.cpp:3170] Got error on control stream error=HTTP: Critical stream was closed streamID=2 sess=proto=h3, UA=, client CID=71d7b6b1e2b19d9d, server CID=400000023e169917, downstream=172.18.0.3:55955, 0.0.0.0:4443=local, drain=none relay-1 | E1002 01:37:48.508147 13 MoQServer.h:198] proxygen::HTTPException: Got error=ApplicationError: 260, HTTP error on control stream relay-1 | E1002 01:37:48.508475 13 MoQServer.h:198] proxygen::HTTPException: Got error=ApplicationError: 260, HTTP error on control stream test-client-1 | 2026-10-02T01:37:48.508577Z  WARN web_transport_quinn::session: failed to read capsule e=UnexpectedEnd test-client-1 | 2026-10-02T01:37:48.508679Z  WARN web_transport_quinn::session: failed to read capsule e=UnexpectedEnd test-client-1 | 2026-10-02T01:37:48.509010Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:45937 dual_stack=true test-client-1 | 2026-10-02T01:37:48.511561Z  INFO moq_test_client::scenarios: Subscriber subscribing BEFORE PUBLISH_NAMESPACE: moq-test/interop/test-track relay-1 | E20261002 01:37:48.512145 14 HQControlCodec.h:58] Unexpected control stream EOF relay-1 | E20261002 01:37:48.512176 14 HQSession.cpp:3170] Got error on control stream error=HTTP: Critical stream was closed streamID=2 sess=proto=h3, UA=, client CID=0fb6d3b99e476db4, server CID=40000040c6bcc3c8, downstream=172.18.0.3:45937, 0.0.0.0:4443=local, drain=none relay-1 | E1002 01:37:48.512221 14 MoQServer.h:198] proxygen::HTTPException: Got error=ApplicationError: 260, HTTP error on control stream test-client-1 | 2026-10-02T01:37:48.512394Z  WARN web_transport_quinn::session: failed to read capsule e=UnexpectedEnd test-client-1 | 2026-10-02T01:37:49.013684Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:58908 dual_stack=true test-client-1 | 2026-10-02T01:37:49.017602Z  INFO moq_test_client::scenarios: Publisher sending PUBLISH_NAMESPACE (after subscriber): moq-test/interop test-client-1 | 2026-10-02T01:37:52.018393Z  INFO moq_test_client::scenarios: Publisher PUBLISH_NAMESPACE timeout (expected) test-client-1 | 2026-10-02T01:37:52.018413Z  INFO moq_test_client::scenarios: Subscriber got error: closed, code=16 (may be expected) relay-1 | E20261002 01:37:52.018697 13 HQControlCodec.h:58] Unexpected control stream EOF relay-1 | E20261002 01:37:52.018745 13 HQSession.cpp:3170] Got error on control stream error=HTTP: Critical stream was closed streamID=2 sess=proto=h3, UA=, client CID=8ce9976c50ad4115, server CID=40000013ba15d39e, downstream=172.18.0.3:58908, 0.0.0.0:4443=local, drain=none relay-1 | E1002 01:37:52.018805 13 MoQServer.h:198] proxygen::HTTPException: Got error=ApplicationError: 260, HTTP error on control stream test-client-1 | ok 5 - subscribe-before-publish-namespace test-client-1 | --- test-client-1 | duration_ms: 3510 test-client-1 | subscriber_connection_id: f86129987fca1a8fed10f1958dec55f0 test-client-1 | publisher_connection_id: 8e4529cbf50a83cac3f8259545a43ec2 test-client-1 | ... test-client-1 | 2026-10-02T01:37:52.019248Z  WARN web_transport_quinn::session: failed to read capsule e=UnexpectedEnd test-client-1 | 2026-10-02T01:37:52.019619Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:33921 dual_stack=true test-client-1 | 2026-10-02T01:37:52.023270Z  INFO moq_test_client::scenarios: Sending PUBLISH_NAMESPACE: moq-test/interop test-client-1 | 2026-10-02T01:37:54.024232Z  INFO moq_test_client::scenarios: PUBLISH_NAMESPACE active; sending PUBLISH_NAMESPACE_DONE test-client-1 | 2026-10-02T01:37:54.125163Z  INFO moq_test_client::scenarios: PUBLISH_NAMESPACE_DONE sent successfully test-client-1 | ok 6 - publish-namespace-done test-client-1 | --- test-client-1 | duration_ms: 2106 test-client-1 | connection_id: f302f12b1a266081a2be40ab8e104346 test-client-1 | ... test-client-1 | 2026-10-02T01:37:54.125805Z  WARN web_transport_quinn::session: failed to read capsule e=UnexpectedEnd test-client-1 | 2026-10-02T01:37:54.126392Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:40805 dual_stack=true relay-1 | E20261002 01:37:54.125389 16 HQControlCodec.h:58] Unexpected control stream EOF relay-1 | E20261002 01:37:54.125443 16 HQSession.cpp:3170] Got error on control stream error=HTTP: Critical stream was closed streamID=2 sess=proto=h3, UA=, client CID=8629562bea1ea282, server CID=400000c87e1a582e, downstream=172.18.0.3:33921, 0.0.0.0:4443=local, drain=none relay-1 | E1002 01:37:54.125509 16 MoQServer.h:198] proxygen::HTTPException: Got error=ApplicationError: 260, HTTP error on control stream test-client-1 | 2026-10-02T01:37:54.128969Z  INFO moq_test_client::scenarios: Publisher sending direct PUBLISH namespace=/moq-test/publish track="published-track" test-client-1 | 2026-10-02T01:37:54.129425Z  INFO moq_test_client::scenarios: PUBLISH accepted namespace=/moq-test/publish track="published-track" test-client-1 | 2026-10-02T01:37:54.129448Z  INFO moq_test_client::scenarios: PUBLISH completed namespace=/moq-test/publish track="published-track" test-client-1 | ok 7 - publish-track-only test-client-1 | --- test-client-1 | duration_ms: 4 test-client-1 | connection_id: 7a4a5edcc573e6f7f2fb9ccee63d1435 test-client-1 | ... relay-1 | E20261002 01:37:54.129683 15 HQControlCodec.h:58] Unexpected control stream EOF relay-1 | E20261002 01:37:54.129739 15 HQSession.cpp:3170] Got error on control stream error=HTTP: Critical stream was closed streamID=2 sess=proto=h3, UA=, client CID=245e018768d02234, server CID=400000828da19332, downstream=172.18.0.3:40805, 0.0.0.0:4443=local, drain=none relay-1 | E1002 01:37:54.129782 15 MoQServer.h:198] proxygen::HTTPException: Got error=ApplicationError: 260, HTTP error on control stream test-client-1 | 2026-10-02T01:37:54.130094Z  WARN web_transport_quinn::session: failed to read capsule e=UnexpectedEnd test-client-1 | 2026-10-02T01:37:54.130454Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:38559 dual_stack=true test-client-1 | 2026-10-02T01:37:54.133127Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:48967 dual_stack=true test-client-1 | 2026-10-02T01:37:54.135056Z  INFO moq_test_client::scenarios: Publisher sending direct PUBLISH before subscriber subscribes namespace=/moq-test/publish track="published-track" test-client-1 | 2026-10-02T01:37:54.135479Z  INFO moq_test_client::scenarios: PUBLISH accepted; starting subscriber namespace=/moq-test/publish track="published-track" relay-1 | I1002 01:37:54.135754 12 MoqxRelay.cpp:2770] Updating forward for moq-test/publish/published-track forward=1 relay-1 | E1002 01:37:54.136139 14 MoqxRelay.cpp:52] requestUpdate failed: not supported test-client-1 | not ok 8 - publish-track-subscribe test-client-1 | --- test-client-1 | duration_ms: 108 test-client-1 | message: "subscriber track mode failed: done" test-client-1 | ... relay-1 | E20261002 01:37:54.237604 16 HQControlCodec.h:58] Unexpected control stream EOF relay-1 | E20261002 01:37:54.237604 14 HQControlCodec.h:58] Unexpected control stream EOF relay-1 | E20261002 01:37:54.237659 14 HQSession.cpp:3170] Got error on control stream error=HTTP: Critical stream was closed streamID=2 sess=proto=h3, UA=, client CID=b57fdcd86ae37466, server CID=4000004baf20390a, downstream=172.18.0.3:38559, 0.0.0.0:4443=local, drain=none relay-1 | E20261002 01:37:54.237641 16 HQSession.cpp:3170] Got error on control stream error=HTTP: Critical stream was closed streamID=2 sess=proto=h3, UA=, client CID=b7efeff3b0c60ca8, server CID=400000c1b6d056d5, downstream=172.18.0.3:48967, 0.0.0.0:4443=local, drain=none relay-1 | E1002 01:37:54.237697 14 MoQServer.h:198] proxygen::HTTPException: Got error=ApplicationError: 260, HTTP error on control stream relay-1 | E1002 01:37:54.237770 16 MoQServer.h:198] proxygen::HTTPException: Got error=ApplicationError: 260, HTTP error on control stream test-client-1 exited with code 1 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 make[1]: *** [Makefile:86: test] Error 1 make[1]: Leaving directory '/home/runner/work/moq-interop-runner/moq-interop-runner/main'