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: aiomoqt-interop-relay-quic:latest Client: ghcr.io/englishm/moq-interop-runner-moq-test-client-draft-18:latest URL: moqt://relay:4443 time="2026-09-15T00:45:49Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-09-15T00:45:49Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-09-15T00:45:49Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-09-15T00:45:49Z" level=warning msg="The \"HEX\" variable is not set. Defaulting to a blank string." time="2026-09-15T00:45:49Z" 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 | 2026-09-15 00:45:49.573 INFO : Starting MOQT server on 0.0.0.0:4443 relay-1 | ================================================================ relay-1 | EXPERIMENTAL aiomoqt interop relay — control-plane only. relay-1 | NOT a production relay: no data forwarding, no auth, relay-1 | no scale handling. Use moxygen / moq-rs for real workloads. relay-1 | ================================================================ relay-1 | Listening on 0.0.0.0:4443 (raw QUIC, draft-[16, 18, 14]) test-client-1 | TAP version 14 test-client-1 | # moq-test-client v0.1.12 test-client-1 | # Relay: moqt://relay:4443 test-client-1 | 1..18 test-client-1 | 2026-09-15T00:45:54.943170Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:55715 dual_stack=true relay-1 | 2026-09-15 00:45:54.945 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:45:54.945 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:45:54.946 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:45:54.946 INFO : MOQT: d18 server control write-uni: 3 test-client-1 | 2026-09-15T00:45:54.946416Z  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: 5ef3ca9f240ebff18664fddb9355c2d9 test-client-1 | ... relay-1 | 2026-09-15 00:45:54.946 ERROR: MOQT error: closing: critical stream closed by remote peer: 2 (1) relay-1 | 2026-09-15 00:45:54.946 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:45:54.946 INFO : MOQT: closing: ConnectionTerminated (0) test-client-1 | 2026-09-15T00:45:54.947422Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:49126 dual_stack=true relay-1 | 2026-09-15 00:45:54.948 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:45:54.948 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:45:54.949 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:45:54.949 INFO : MOQT: d18 server control write-uni: 3 test-client-1 | 2026-09-15T00:45:54.949344Z  INFO moq_test_client::scenarios: Sending PUBLISH_NAMESPACE for: moq-test/interop relay-1 | 2026-09-15 00:45:54.949 INFO : MOQT event: control message parsed: PublishNamespace(request_id=0, namespace=["moq-test", "interop"], parameters={})) relay-1 | 2026-09-15 00:45:54.949 INFO : relay: announce ns=(b'moq-test', b'interop') -> count=1 relay-1 | 2026-09-15 00:45:54.949 INFO : MOQT send: RequestOk(request_id=0, parameters=None) request_id: 0 namespace: (b'moq-test', b'interop') relay-1 | 2026-09-15 00:45:54.949 INFO : Serialized 0 parameters: b'\x00\x02\xd2\xa7Y\x7f\x00\x00\x10\x02\xd2\xa7' relay-1 | 2026-09-15 00:45:55.023 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:45:55.024 INFO : MOQT: closing: ConnectionTerminated (0) test-client-1 | 2026-09-15T00:45:56.950457Z  INFO moq_test_client::scenarios: PUBLISH_NAMESPACE succeeded (REQUEST_OK received, waiting for subscribers) test-client-1 | ok 2 - publish-namespace-only relay-1 | 2026-09-15 00:45:56.950 ERROR: MOQT error: closing: critical stream closed by remote peer: 2 (1) relay-1 | 2026-09-15 00:45:56.951 WARNING: QUIC event: stream data after close: stream 0 (rate-limited to once per stream) test-client-1 | --- test-client-1 | duration_ms: 2004 test-client-1 | connection_id: 47d8556cad84548a910665002962b403 test-client-1 | ... relay-1 | 2026-09-15 00:45:56.951 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:45:56.951 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:45:56.951 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:45:56.951 INFO : MOQT: closing: ConnectionTerminated (0) test-client-1 | 2026-09-15T00:45:56.952092Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:42135 dual_stack=true relay-1 | 2026-09-15 00:45:56.953 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:45:56.953 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:45:56.953 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:45:56.953 INFO : MOQT: d18 server control write-uni: 3 test-client-1 | 2026-09-15T00:45:56.954234Z  INFO moq_test_client::scenarios: Subscribing to non-existent track: nonexistent/namespace/test-track relay-1 | 2026-09-15 00:45:56.954 INFO : MOQT event: control message parsed: Subscribe(request_id=0, track_namespace=["nonexistent", "namespace"], track_name="test-track", priority=None, group_order=None, forward=None, filter_type=None, start_group=None, start_object=None, end_group=None, parameters={}, track_alias=None, libquicr_compat=False)) relay-1 | 2026-09-15 00:45:56.954 INFO : relay: subscribe ns=(b'nonexistent', b'namespace') track=b'test-track' -> ERROR (not announced) relay-1 | 2026-09-15 00:45:56.954 INFO : MOQT send: RequestError(request_id=0, error_code=16, retry_interval=0, reason=track does not exist) test-client-1 | not ok 3 - subscribe-error test-client-1 | --- test-client-1 | duration_ms: 10001 test-client-1 | message: "test timed out: deadline has elapsed" test-client-1 | ... relay-1 | 2026-09-15 00:46:06.952 ERROR: MOQT error: closing: critical stream closed by remote peer: 2 (1) relay-1 | 2026-09-15 00:46:06.952 WARNING: QUIC event: stream data after close: stream 0 (rate-limited to once per stream) relay-1 | 2026-09-15 00:46:06.952 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:06.952 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:06.953 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:06.953 INFO : MOQT: closing: ConnectionTerminated (0) test-client-1 | 2026-09-15T00:46:06.953486Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:52072 dual_stack=true relay-1 | 2026-09-15 00:46:06.955 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:46:06.955 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:46:06.955 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:46:06.955 INFO : MOQT: d18 server control write-uni: 3 test-client-1 | 2026-09-15T00:46:06.956577Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:47238 dual_stack=true relay-1 | 2026-09-15 00:46:06.957 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:46:06.958 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:46:06.958 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:46:06.958 INFO : MOQT: d18 server control write-uni: 3 test-client-1 | 2026-09-15T00:46:06.958526Z  INFO moq_test_client::scenarios: Publisher sending PUBLISH_NAMESPACE: moq-test/interop test-client-1 | 2026-09-15T00:46:06.958539Z  INFO moq_test_client::scenarios: Subscriber subscribing to track: moq-test/interop/test-track relay-1 | 2026-09-15 00:46:06.958 INFO : MOQT event: control message parsed: PublishNamespace(request_id=0, namespace=["moq-test", "interop"], parameters={})) relay-1 | 2026-09-15 00:46:06.959 INFO : relay: announce ns=(b'moq-test', b'interop') -> count=2 relay-1 | 2026-09-15 00:46:06.959 INFO : MOQT send: RequestOk(request_id=0, parameters=None) request_id: 0 namespace: (b'moq-test', b'interop') relay-1 | 2026-09-15 00:46:06.959 INFO : Serialized 0 parameters: b'\x00\x01\xd2\xa7Y\x7f\x00\x00P\x01\xd2\xa7' relay-1 | 2026-09-15 00:46:06.959 INFO : MOQT event: control message parsed: Subscribe(request_id=0, track_namespace=["moq-test", "interop"], track_name="test-track", priority=None, group_order=None, forward=None, filter_type=None, start_group=None, start_object=None, end_group=None, parameters={}, track_alias=None, libquicr_compat=False)) relay-1 | 2026-09-15 00:46:06.959 INFO : relay: subscribe ns=(b'moq-test', b'interop') track=b'test-track' -> SUBSCRIBE_OK relay-1 | 2026-09-15 00:46:06.959 INFO : MOQT send: SubscribeOk(request_id=0, track_alias=0, expires=0, group_order=1, content_exists=0, largest_group_id=None, largest_object_id=None, parameters={}, track_extensions=None) relay-1 | 2026-09-15 00:46:06.959 INFO : Serializing param 8 value 0 relay-1 | 2026-09-15 00:46:06.959 INFO : Serialized 1 parameters: b'\x00\x01\x08\x00Y\x7f\x00\x00P\x01\xd2\xa7' test-client-1 | 2026-09-15T00:46:09.959683Z  INFO moq_test_client::scenarios: Test timeout reached - subscription routing may still be in progress test-client-1 | ok 4 - publish-namespace-subscribe test-client-1 | --- test-client-1 | duration_ms: 3007 test-client-1 | publisher_connection_id: 6416ae440374a26469b701f812b924f3 test-client-1 | subscriber_connection_id: 550b37f5446f3ce783f0094ee7caf8b8 test-client-1 | ... relay-1 | 2026-09-15 00:46:09.960 ERROR: MOQT error: closing: critical stream closed by remote peer: 2 (1) relay-1 | 2026-09-15 00:46:09.960 WARNING: QUIC event: stream data after close: stream 0 (rate-limited to once per stream) relay-1 | 2026-09-15 00:46:09.960 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:09.960 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:09.960 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:09.960 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:09.960 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:09.960 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:09.961 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:09.961 INFO : MOQT: closing: ConnectionTerminated (0) test-client-1 | 2026-09-15T00:46:09.961378Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:45231 dual_stack=true relay-1 | 2026-09-15 00:46:09.963 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:46:09.963 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:46:09.963 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:46:09.963 INFO : MOQT: d18 server control write-uni: 3 test-client-1 | 2026-09-15T00:46:09.963638Z  INFO moq_test_client::scenarios: Subscriber subscribing BEFORE PUBLISH_NAMESPACE: moq-test/interop/test-track relay-1 | 2026-09-15 00:46:09.963 INFO : MOQT event: control message parsed: Subscribe(request_id=0, track_namespace=["moq-test", "interop"], track_name="test-track", priority=None, group_order=None, forward=None, filter_type=None, start_group=None, start_object=None, end_group=None, parameters={}, track_alias=None, libquicr_compat=False)) relay-1 | 2026-09-15 00:46:09.964 INFO : relay: subscribe ns=(b'moq-test', b'interop') track=b'test-track' -> SUBSCRIBE_OK relay-1 | 2026-09-15 00:46:09.964 INFO : MOQT send: SubscribeOk(request_id=0, track_alias=0, expires=0, group_order=1, content_exists=0, largest_group_id=None, largest_object_id=None, parameters={}, track_extensions=None) relay-1 | 2026-09-15 00:46:09.964 INFO : Serializing param 8 value 0 relay-1 | 2026-09-15 00:46:09.964 INFO : Serialized 1 parameters: b'\x00\x01\x08\x00Y\x7f\x00\x00\x10\x02\xd2\xa7' test-client-1 | 2026-09-15T00:46:10.465736Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:44853 dual_stack=true relay-1 | 2026-09-15 00:46:10.467 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:46:10.468 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:46:10.468 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:46:10.468 INFO : MOQT: d18 server control write-uni: 3 test-client-1 | 2026-09-15T00:46:10.468569Z  INFO moq_test_client::scenarios: Publisher sending PUBLISH_NAMESPACE (after subscriber): moq-test/interop relay-1 | 2026-09-15 00:46:10.468 INFO : MOQT event: control message parsed: PublishNamespace(request_id=0, namespace=["moq-test", "interop"], parameters={})) relay-1 | 2026-09-15 00:46:10.468 INFO : relay: announce ns=(b'moq-test', b'interop') -> count=3 relay-1 | 2026-09-15 00:46:10.469 INFO : MOQT send: RequestOk(request_id=0, parameters=None) request_id: 0 namespace: (b'moq-test', b'interop') relay-1 | 2026-09-15 00:46:10.469 INFO : Serialized 0 parameters: b'\x00\x01\xd2\xa7Y\x7f\x00\x00P\x01\xd2\xa7' test-client-1 | 2026-09-15T00:46:13.470264Z  INFO moq_test_client::scenarios: Publisher PUBLISH_NAMESPACE timeout (expected) relay-1 | 2026-09-15 00:46:13.470 ERROR: MOQT error: closing: critical stream closed by remote peer: 2 (1) relay-1 | 2026-09-15 00:46:13.470 WARNING: QUIC event: stream data after close: stream 0 (rate-limited to once per stream) test-client-1 | 2026-09-15T00:46:14.471795Z  INFO moq_test_client::scenarios: Subscriber still waiting (test complete) test-client-1 | ok 5 - subscribe-before-publish-namespace test-client-1 | --- test-client-1 | duration_ms: 4512 test-client-1 | subscriber_connection_id: c95051307843acdef76e19bf8007ef8d test-client-1 | publisher_connection_id: c6f9249e8a245e02344bad058254b49f test-client-1 | ... relay-1 | 2026-09-15 00:46:14.472 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:14.472 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:14.472 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:14.472 INFO : MOQT: closing: ConnectionTerminated (0) test-client-1 | 2026-09-15T00:46:14.473075Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:42868 dual_stack=true relay-1 | 2026-09-15 00:46:14.475 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:46:14.476 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:46:14.476 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:46:14.476 INFO : MOQT: d18 server control write-uni: 3 test-client-1 | 2026-09-15T00:46:14.476555Z  INFO moq_test_client::scenarios: Sending PUBLISH_NAMESPACE: moq-test/interop relay-1 | 2026-09-15 00:46:14.476 INFO : MOQT event: control message parsed: PublishNamespace(request_id=0, namespace=["moq-test", "interop"], parameters={})) relay-1 | 2026-09-15 00:46:14.476 INFO : relay: announce ns=(b'moq-test', b'interop') -> count=4 relay-1 | 2026-09-15 00:46:14.477 INFO : MOQT send: RequestOk(request_id=0, parameters=None) request_id: 0 namespace: (b'moq-test', b'interop') relay-1 | 2026-09-15 00:46:14.477 INFO : Serialized 0 parameters: b'\x00\x01\xd2\xa7Y\x7f\x00\x00P\x01\xd2\xa7' test-client-1 | 2026-09-15T00:46:16.478262Z  INFO moq_test_client::scenarios: PUBLISH_NAMESPACE active; sending PUBLISH_NAMESPACE_DONE relay-1 | 2026-09-15 00:46:16.478 ERROR: MOQT error: closing: critical stream closed by remote peer: 2 (1) relay-1 | 2026-09-15 00:46:16.478 WARNING: QUIC event: stream data after close: stream 0 (rate-limited to once per stream) test-client-1 | ok 6 - publish-namespace-done test-client-1 | --- test-client-1 | duration_ms: 2107 test-client-1 | connection_id: c948d3f9a82135931f0bed6e0925aa28 test-client-1 | ... test-client-1 | 2026-09-15T00:46:16.579570Z  INFO moq_test_client::scenarios: PUBLISH_NAMESPACE_DONE sent successfully relay-1 | 2026-09-15 00:46:16.580 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:16.580 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:16.580 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:16.580 INFO : MOQT: closing: ConnectionTerminated (0) test-client-1 | 2026-09-15T00:46:16.580899Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:54134 dual_stack=true relay-1 | 2026-09-15 00:46:16.582 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:46:16.582 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:46:16.582 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:46:16.582 INFO : MOQT: d18 server control write-uni: 3 test-client-1 | 2026-09-15T00:46:16.583150Z  INFO moq_test_client::scenarios: Publisher sending direct PUBLISH namespace=/moq-test/publish track="published-track" relay-1 | 2026-09-15 00:46:16.583 INFO : MOQT event: control message parsed: Publish(request_id=0, track_namespace=["moq-test", "publish"], track_name="published-track", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None)) relay-1 | 2026-09-15 00:46:16.583 INFO : MOQT event: handle Publish(request_id=0, track_namespace=["moq-test", "publish"], track_name="published-track", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None) test-client-1 | not ok 7 - publish-track-only test-client-1 | --- test-client-1 | duration_ms: 10001 test-client-1 | message: "test timed out: deadline has elapsed" test-client-1 | ... relay-1 | 2026-09-15 00:46:26.581 ERROR: MOQT error: closing: critical stream closed by remote peer: 2 (1) relay-1 | 2026-09-15 00:46:26.581 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:26.581 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:26.581 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:26.581 INFO : MOQT: closing: ConnectionTerminated (0) test-client-1 | 2026-09-15T00:46:26.582108Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:54212 dual_stack=true relay-1 | 2026-09-15 00:46:26.583 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:46:26.584 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:46:26.584 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:46:26.584 INFO : MOQT: d18 server control write-uni: 3 test-client-1 | 2026-09-15T00:46:26.585166Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:38618 dual_stack=true relay-1 | 2026-09-15 00:46:26.586 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:46:26.586 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:46:26.586 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:46:26.586 INFO : MOQT: d18 server control write-uni: 3 test-client-1 | 2026-09-15T00:46:26.587132Z  INFO moq_test_client::scenarios: Publisher sending direct PUBLISH before subscriber subscribes namespace=/moq-test/publish track="published-track" relay-1 | 2026-09-15 00:46:26.587 INFO : MOQT event: control message parsed: Publish(request_id=0, track_namespace=["moq-test", "publish"], track_name="published-track", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None)) relay-1 | 2026-09-15 00:46:26.587 INFO : MOQT event: handle Publish(request_id=0, track_namespace=["moq-test", "publish"], track_name="published-track", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None) test-client-1 | not ok 8 - publish-track-subscribe test-client-1 | --- test-client-1 | duration_ms: 10001 test-client-1 | message: "test timed out: deadline has elapsed" test-client-1 | ... relay-1 | 2026-09-15 00:46:36.583 ERROR: MOQT error: closing: critical stream closed by remote peer: 2 (1) relay-1 | 2026-09-15 00:46:36.583 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:36.583 INFO : MOQT: closing: ConnectionTerminated (0) test-client-1 | 2026-09-15T00:46:36.583485Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:35188 dual_stack=true relay-1 | 2026-09-15 00:46:36.583 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:36.583 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:36.583 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:36.583 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:36.583 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:36.583 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:36.585 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:46:36.585 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:46:36.585 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:46:36.585 INFO : MOQT: d18 server control write-uni: 3 test-client-1 | 2026-09-15T00:46:36.585832Z  INFO moq_test_client::scenarios: Subscribing with RENDEZVOUS_TIMEOUT to a track with no publisher timeout_ms=500 relay-1 | 2026-09-15 00:46:36.586 INFO : MOQT event: control message parsed: Subscribe(request_id=0, track_namespace=["nonexistent", "rendezvous"], track_name="test-track", priority=None, group_order=None, forward=None, filter_type=None, start_group=None, start_object=None, end_group=None, parameters={MAX_CACHE_DURATION=500}, track_alias=None, libquicr_compat=False)) relay-1 | 2026-09-15 00:46:36.586 INFO : relay: subscribe ns=(b'nonexistent', b'rendezvous') track=b'test-track' -> ERROR (not announced) relay-1 | 2026-09-15 00:46:36.586 INFO : MOQT send: RequestError(request_id=0, error_code=16, retry_interval=0, reason=track does not exist) test-client-1 | not ok 9 - rendezvous-timeout test-client-1 | --- test-client-1 | duration_ms: 2004 test-client-1 | message: "relay did not answer rendezvous subscribe within 2s: deadline has elapsed" test-client-1 | ... relay-1 | 2026-09-15 00:46:38.586 ERROR: MOQT error: closing: critical stream closed by remote peer: 2 (1) relay-1 | 2026-09-15 00:46:38.586 WARNING: QUIC event: stream data after close: stream 0 (rate-limited to once per stream) relay-1 | 2026-09-15 00:46:38.586 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:38.586 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:38.587 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:38.587 INFO : MOQT: closing: ConnectionTerminated (0) test-client-1 | 2026-09-15T00:46:38.587714Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:48093 dual_stack=true relay-1 | 2026-09-15 00:46:38.589 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:46:38.589 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:46:38.589 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:46:38.589 INFO : MOQT: d18 server control write-uni: 3 relay-1 | 2026-09-15 00:46:38.590 INFO : MOQT event: control message parsed: Subscribe(request_id=0, track_namespace=["moq-test-00", "0", "0", "0", "2", "4", "5", "64", "32", "2", "1", "1", "0", "-1", "-1", "0"], track_name="moq-test-640ca2007cfdd3a6", priority=None, group_order=None, forward=None, filter_type=None, start_group=None, start_object=None, end_group=None, parameters={MAX_CACHE_DURATION=5000}, track_alias=None, libquicr_compat=False)) relay-1 | 2026-09-15 00:46:38.590 INFO : relay: subscribe ns=(b'moq-test-00', b'0', b'0', b'0', b'2', b'4', b'5', b'64', b'32', b'2', b'1', b'1', b'0', b'-1', b'-1', b'0') track=b'moq-test-640ca2007cfdd3a6' -> ERROR (not announced) relay-1 | 2026-09-15 00:46:38.590 INFO : MOQT send: RequestError(request_id=0, error_code=16, retry_interval=0, reason=track does not exist) test-client-1 | 2026-09-15T00:46:38.791930Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:56700 dual_stack=true relay-1 | 2026-09-15 00:46:38.793 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:46:38.794 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:46:38.794 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:46:38.794 INFO : MOQT: d18 server control write-uni: 3 relay-1 | 2026-09-15 00:46:38.794 INFO : MOQT event: control message parsed: Publish(request_id=0, track_namespace=["moq-test-00", "0", "0", "0", "2", "4", "5", "64", "32", "2", "1", "1", "0", "-1", "-1", "0"], track_name="moq-test-640ca2007cfdd3a6", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None)) relay-1 | 2026-09-15 00:46:38.795 INFO : MOQT event: handle Publish(request_id=0, track_namespace=["moq-test-00", "0", "0", "0", "2", "4", "5", "64", "32", "2", "1", "1", "0", "-1", "-1", "0"], track_name="moq-test-640ca2007cfdd3a6", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None) test-client-1 | not ok 10 - moq-test-subgroup-per-group test-client-1 | --- test-client-1 | duration_ms: 10001 test-client-1 | message: "test timed out: deadline has elapsed" test-client-1 | ... relay-1 | 2026-09-15 00:46:48.588 ERROR: MOQT error: closing: critical stream closed by remote peer: 2 (1) relay-1 | 2026-09-15 00:46:48.588 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:48.588 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:48.589 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:48.589 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:48.589 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:48.589 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:48.589 INFO : QUIC: connection closed: code: 0 test-client-1 | 2026-09-15T00:46:48.589244Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:53984 dual_stack=true relay-1 | 2026-09-15 00:46:48.589 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:48.592 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:46:48.592 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:46:48.592 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:46:48.592 INFO : MOQT: d18 server control write-uni: 3 relay-1 | 2026-09-15 00:46:48.592 INFO : MOQT event: control message parsed: Subscribe(request_id=0, track_namespace=["moq-test-00", "0", "0", "0", "2", "5", "5", "64", "32", "2", "1", "1", "1", "-1", "-1", "0"], track_name="moq-test-d48f3a2bb21f806d", priority=None, group_order=None, forward=None, filter_type=None, start_group=None, start_object=None, end_group=None, parameters={MAX_CACHE_DURATION=5000}, track_alias=None, libquicr_compat=False)) relay-1 | 2026-09-15 00:46:48.592 INFO : relay: subscribe ns=(b'moq-test-00', b'0', b'0', b'0', b'2', b'5', b'5', b'64', b'32', b'2', b'1', b'1', b'1', b'-1', b'-1', b'0') track=b'moq-test-d48f3a2bb21f806d' -> ERROR (not announced) relay-1 | 2026-09-15 00:46:48.593 INFO : MOQT send: RequestError(request_id=0, error_code=16, retry_interval=0, reason=track does not exist) test-client-1 | 2026-09-15T00:46:48.795104Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:54296 dual_stack=true relay-1 | 2026-09-15 00:46:48.797 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:46:48.797 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:46:48.797 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:46:48.797 INFO : MOQT: d18 server control write-uni: 3 relay-1 | 2026-09-15 00:46:48.798 INFO : MOQT event: control message parsed: Publish(request_id=0, track_namespace=["moq-test-00", "0", "0", "0", "2", "5", "5", "64", "32", "2", "1", "1", "1", "-1", "-1", "0"], track_name="moq-test-d48f3a2bb21f806d", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None)) relay-1 | 2026-09-15 00:46:48.798 INFO : MOQT event: handle Publish(request_id=0, track_namespace=["moq-test-00", "0", "0", "0", "2", "5", "5", "64", "32", "2", "1", "1", "1", "-1", "-1", "0"], track_name="moq-test-d48f3a2bb21f806d", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None) relay-1 | 2026-09-15 00:46:58.589 ERROR: MOQT error: closing: critical stream closed by remote peer: 2 (1) test-client-1 | not ok 11 - moq-test-subgroup-per-group-eog test-client-1 | --- test-client-1 | duration_ms: 10001 test-client-1 | message: "test timed out: deadline has elapsed" relay-1 | 2026-09-15 00:46:58.589 INFO : QUIC: connection closed: code: 0 test-client-1 | ... relay-1 | 2026-09-15 00:46:58.589 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:58.589 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:58.590 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:58.590 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:58.590 INFO : MOQT: closing: ConnectionTerminated (0) test-client-1 | 2026-09-15T00:46:58.590297Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:35609 dual_stack=true relay-1 | 2026-09-15 00:46:58.590 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:46:58.590 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:46:58.592 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:46:58.592 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:46:58.592 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:46:58.592 INFO : MOQT: d18 server control write-uni: 3 relay-1 | 2026-09-15 00:46:58.592 INFO : MOQT event: control message parsed: Subscribe(request_id=0, track_namespace=["moq-test-00", "1", "0", "0", "1", "3", "4", "64", "32", "2", "1", "1", "0", "-1", "-1", "0"], track_name="moq-test-9aaaf40d545f5d1d", priority=None, group_order=None, forward=None, filter_type=None, start_group=None, start_object=None, end_group=None, parameters={MAX_CACHE_DURATION=5000}, track_alias=None, libquicr_compat=False)) relay-1 | 2026-09-15 00:46:58.593 INFO : relay: subscribe ns=(b'moq-test-00', b'1', b'0', b'0', b'1', b'3', b'4', b'64', b'32', b'2', b'1', b'1', b'0', b'-1', b'-1', b'0') track=b'moq-test-9aaaf40d545f5d1d' -> ERROR (not announced) relay-1 | 2026-09-15 00:46:58.593 INFO : MOQT send: RequestError(request_id=0, error_code=16, retry_interval=0, reason=track does not exist) test-client-1 | 2026-09-15T00:46:58.794655Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:43208 dual_stack=true relay-1 | 2026-09-15 00:46:58.796 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:46:58.796 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:46:58.796 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:46:58.796 INFO : MOQT: d18 server control write-uni: 3 relay-1 | 2026-09-15 00:46:58.797 INFO : MOQT event: control message parsed: Publish(request_id=0, track_namespace=["moq-test-00", "1", "0", "0", "1", "3", "4", "64", "32", "2", "1", "1", "0", "-1", "-1", "0"], track_name="moq-test-9aaaf40d545f5d1d", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None)) relay-1 | 2026-09-15 00:46:58.797 INFO : MOQT event: handle Publish(request_id=0, track_namespace=["moq-test-00", "1", "0", "0", "1", "3", "4", "64", "32", "2", "1", "1", "0", "-1", "-1", "0"], track_name="moq-test-9aaaf40d545f5d1d", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None) test-client-1 | not ok 12 - moq-test-subgroup-per-object test-client-1 | --- test-client-1 | duration_ms: 10000 test-client-1 | message: "test timed out: deadline has elapsed" test-client-1 | ... relay-1 | 2026-09-15 00:47:08.590 ERROR: MOQT error: closing: critical stream closed by remote peer: 2 (1) relay-1 | 2026-09-15 00:47:08.590 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:08.590 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:47:08.590 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:08.590 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:47:08.590 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:08.590 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:47:08.590 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:08.590 INFO : MOQT: closing: ConnectionTerminated (0) test-client-1 | 2026-09-15T00:47:08.591057Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:44378 dual_stack=true relay-1 | 2026-09-15 00:47:08.592 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:47:08.592 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:47:08.593 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:47:08.593 INFO : MOQT: d18 server control write-uni: 3 relay-1 | 2026-09-15 00:47:08.593 INFO : MOQT event: control message parsed: Subscribe(request_id=0, track_namespace=["moq-test-00", "2", "0", "0", "2", "6", "6", "64", "32", "2", "1", "1", "1", "-1", "-1", "0"], track_name="moq-test-f14ce1b4eccc4371", priority=None, group_order=None, forward=None, filter_type=None, start_group=None, start_object=None, end_group=None, parameters={MAX_CACHE_DURATION=5000}, track_alias=None, libquicr_compat=False)) relay-1 | 2026-09-15 00:47:08.593 INFO : relay: subscribe ns=(b'moq-test-00', b'2', b'0', b'0', b'2', b'6', b'6', b'64', b'32', b'2', b'1', b'1', b'1', b'-1', b'-1', b'0') track=b'moq-test-f14ce1b4eccc4371' -> ERROR (not announced) relay-1 | 2026-09-15 00:47:08.593 INFO : MOQT send: RequestError(request_id=0, error_code=16, retry_interval=0, reason=track does not exist) test-client-1 | 2026-09-15T00:47:08.795880Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:34951 dual_stack=true relay-1 | 2026-09-15 00:47:08.797 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:47:08.798 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:47:08.798 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:47:08.798 INFO : MOQT: d18 server control write-uni: 3 relay-1 | 2026-09-15 00:47:08.798 INFO : MOQT event: control message parsed: Publish(request_id=0, track_namespace=["moq-test-00", "2", "0", "0", "2", "6", "6", "64", "32", "2", "1", "1", "1", "-1", "-1", "0"], track_name="moq-test-f14ce1b4eccc4371", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None)) relay-1 | 2026-09-15 00:47:08.799 INFO : MOQT event: handle Publish(request_id=0, track_namespace=["moq-test-00", "2", "0", "0", "2", "6", "6", "64", "32", "2", "1", "1", "1", "-1", "-1", "0"], track_name="moq-test-f14ce1b4eccc4371", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None) relay-1 | 2026-09-15 00:47:18.591 ERROR: MOQT error: closing: critical stream closed by remote peer: 2 (1) relay-1 | 2026-09-15 00:47:18.591 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:18.591 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:47:18.591 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:18.591 INFO : MOQT: closing: ConnectionTerminated (0) test-client-1 | not ok 13 - moq-test-two-subgroups-eog test-client-1 | --- test-client-1 | duration_ms: 10001 test-client-1 | message: "test timed out: deadline has elapsed" test-client-1 | ... relay-1 | 2026-09-15 00:47:18.592 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:18.592 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:47:18.592 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:18.592 INFO : MOQT: closing: ConnectionTerminated (0) test-client-1 | 2026-09-15T00:47:18.592689Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:33063 dual_stack=true relay-1 | 2026-09-15 00:47:18.594 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:47:18.594 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:47:18.594 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:47:18.594 INFO : MOQT: d18 server control write-uni: 3 relay-1 | 2026-09-15 00:47:18.595 INFO : MOQT event: control message parsed: Subscribe(request_id=0, track_namespace=["moq-test-00", "3", "0", "0", "2", "4", "5", "64", "32", "20", "1", "1", "0", "-1", "-1", "0"], track_name="moq-test-77a863a7950bc798", priority=None, group_order=None, forward=None, filter_type=None, start_group=None, start_object=None, end_group=None, parameters={MAX_CACHE_DURATION=5000}, track_alias=None, libquicr_compat=False)) relay-1 | 2026-09-15 00:47:18.595 INFO : relay: subscribe ns=(b'moq-test-00', b'3', b'0', b'0', b'2', b'4', b'5', b'64', b'32', b'20', b'1', b'1', b'0', b'-1', b'-1', b'0') track=b'moq-test-77a863a7950bc798' -> ERROR (not announced) relay-1 | 2026-09-15 00:47:18.595 INFO : MOQT send: RequestError(request_id=0, error_code=16, retry_interval=0, reason=track does not exist) test-client-1 | 2026-09-15T00:47:18.796287Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:44648 dual_stack=true relay-1 | 2026-09-15 00:47:18.797 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:47:18.797 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:47:18.798 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:47:18.798 INFO : MOQT: d18 server control write-uni: 3 relay-1 | 2026-09-15 00:47:18.798 INFO : MOQT event: control message parsed: Publish(request_id=0, track_namespace=["moq-test-00", "3", "0", "0", "2", "4", "5", "64", "32", "20", "1", "1", "0", "-1", "-1", "0"], track_name="moq-test-77a863a7950bc798", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None)) relay-1 | 2026-09-15 00:47:18.798 INFO : MOQT event: handle Publish(request_id=0, track_namespace=["moq-test-00", "3", "0", "0", "2", "4", "5", "64", "32", "20", "1", "1", "0", "-1", "-1", "0"], track_name="moq-test-77a863a7950bc798", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None) test-client-1 | not ok 14 - moq-test-datagram test-client-1 | --- test-client-1 | duration_ms: 10002 test-client-1 | message: "test timed out: deadline has elapsed" test-client-1 | ... relay-1 | 2026-09-15 00:47:28.594 ERROR: MOQT error: closing: critical stream closed by remote peer: 2 (1) test-client-1 | 2026-09-15T00:47:28.594441Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:57644 dual_stack=true relay-1 | 2026-09-15 00:47:28.594 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:28.594 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:47:28.594 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:28.594 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:47:28.594 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:28.594 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:47:28.594 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:28.594 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:47:28.596 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:47:28.596 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:47:28.596 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:47:28.596 INFO : MOQT: d18 server control write-uni: 3 relay-1 | 2026-09-15 00:47:28.597 INFO : MOQT event: control message parsed: Subscribe(request_id=0, track_namespace=["moq-test-00", "3", "0", "0", "2", "5", "5", "64", "32", "20", "1", "1", "1", "-1", "-1", "0"], track_name="moq-test-f9ab11fb12a906da", priority=None, group_order=None, forward=None, filter_type=None, start_group=None, start_object=None, end_group=None, parameters={MAX_CACHE_DURATION=5000}, track_alias=None, libquicr_compat=False)) relay-1 | 2026-09-15 00:47:28.597 INFO : relay: subscribe ns=(b'moq-test-00', b'3', b'0', b'0', b'2', b'5', b'5', b'64', b'32', b'20', b'1', b'1', b'1', b'-1', b'-1', b'0') track=b'moq-test-f9ab11fb12a906da' -> ERROR (not announced) relay-1 | 2026-09-15 00:47:28.597 INFO : MOQT send: RequestError(request_id=0, error_code=16, retry_interval=0, reason=track does not exist) test-client-1 | 2026-09-15T00:47:28.798242Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:33506 dual_stack=true relay-1 | 2026-09-15 00:47:28.799 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:47:28.800 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:47:28.800 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:47:28.800 INFO : MOQT: d18 server control write-uni: 3 relay-1 | 2026-09-15 00:47:28.800 INFO : MOQT event: control message parsed: Publish(request_id=0, track_namespace=["moq-test-00", "3", "0", "0", "2", "5", "5", "64", "32", "20", "1", "1", "1", "-1", "-1", "0"], track_name="moq-test-f9ab11fb12a906da", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None)) relay-1 | 2026-09-15 00:47:28.801 INFO : MOQT event: handle Publish(request_id=0, track_namespace=["moq-test-00", "3", "0", "0", "2", "5", "5", "64", "32", "20", "1", "1", "1", "-1", "-1", "0"], track_name="moq-test-f9ab11fb12a906da", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None) test-client-1 | not ok 15 - moq-test-datagram-eog test-client-1 | --- test-client-1 | duration_ms: 10001 test-client-1 | message: "test timed out: deadline has elapsed" test-client-1 | ... relay-1 | 2026-09-15 00:47:38.595 ERROR: MOQT error: closing: critical stream closed by remote peer: 2 (1) relay-1 | 2026-09-15 00:47:38.595 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:38.595 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:47:38.595 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:38.595 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:47:38.595 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:38.595 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:47:38.595 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:38.595 INFO : MOQT: closing: ConnectionTerminated (0) test-client-1 | 2026-09-15T00:47:38.596256Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:42428 dual_stack=true relay-1 | 2026-09-15 00:47:38.597 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:47:38.598 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:47:38.598 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:47:38.598 INFO : MOQT: d18 server control write-uni: 3 relay-1 | 2026-09-15 00:47:38.598 INFO : MOQT event: control message parsed: Subscribe(request_id=0, track_namespace=["moq-test-00", "0", "0", "0", "2", "5", "5", "64", "32", "2", "1", "1", "1", "1", "2", "0"], track_name="moq-test-6f681acb45e508ea", priority=None, group_order=None, forward=None, filter_type=None, start_group=None, start_object=None, end_group=None, parameters={MAX_CACHE_DURATION=5000}, track_alias=None, libquicr_compat=False)) relay-1 | 2026-09-15 00:47:38.598 INFO : relay: subscribe ns=(b'moq-test-00', b'0', b'0', b'0', b'2', b'5', b'5', b'64', b'32', b'2', b'1', b'1', b'1', b'1', b'2', b'0') track=b'moq-test-6f681acb45e508ea' -> ERROR (not announced) relay-1 | 2026-09-15 00:47:38.598 INFO : MOQT send: RequestError(request_id=0, error_code=16, retry_interval=0, reason=track does not exist) test-client-1 | 2026-09-15T00:47:38.800885Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:34183 dual_stack=true relay-1 | 2026-09-15 00:47:38.802 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:47:38.802 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:47:38.803 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:47:38.803 INFO : MOQT: d18 server control write-uni: 3 relay-1 | 2026-09-15 00:47:38.803 INFO : MOQT event: control message parsed: Publish(request_id=0, track_namespace=["moq-test-00", "0", "0", "0", "2", "5", "5", "64", "32", "2", "1", "1", "1", "1", "2", "0"], track_name="moq-test-6f681acb45e508ea", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None)) relay-1 | 2026-09-15 00:47:38.804 INFO : MOQT event: handle Publish(request_id=0, track_namespace=["moq-test-00", "0", "0", "0", "2", "5", "5", "64", "32", "2", "1", "1", "1", "1", "2", "0"], track_name="moq-test-6f681acb45e508ea", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None) relay-1 | 2026-09-15 00:47:48.596 ERROR: MOQT error: closing: critical stream closed by remote peer: 2 (1) test-client-1 | not ok 16 - moq-test-extensions test-client-1 | --- test-client-1 | duration_ms: 10001 test-client-1 | message: "test timed out: deadline has elapsed" test-client-1 | ... relay-1 | 2026-09-15 00:47:48.596 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:48.596 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:47:48.596 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:48.596 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:47:48.596 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:48.596 INFO : MOQT: closing: ConnectionTerminated (0) relay-1 | 2026-09-15 00:47:48.597 INFO : QUIC: connection closed: code: 0 relay-1 | 2026-09-15 00:47:48.597 INFO : MOQT: closing: ConnectionTerminated (0) test-client-1 | 2026-09-15T00:47:48.597477Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:53528 dual_stack=true relay-1 | 2026-09-15 00:47:48.599 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:47:48.599 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:47:48.599 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:47:48.599 INFO : MOQT: d18 server control write-uni: 3 relay-1 | 2026-09-15 00:47:48.600 INFO : MOQT event: control message parsed: Subscribe(request_id=0, track_namespace=["moq-test-00", "0", "10", "3", "24", "7", "3", "40", "24", "2", "7", "2", "0", "-1", "-1", "0"], track_name="moq-test-983c39297276ca37", priority=None, group_order=None, forward=None, filter_type=None, start_group=None, start_object=None, end_group=None, parameters={MAX_CACHE_DURATION=5000}, track_alias=None, libquicr_compat=False)) relay-1 | 2026-09-15 00:47:48.600 INFO : relay: subscribe ns=(b'moq-test-00', b'0', b'10', b'3', b'24', b'7', b'3', b'40', b'24', b'2', b'7', b'2', b'0', b'-1', b'-1', b'0') track=b'moq-test-983c39297276ca37' -> ERROR (not announced) relay-1 | 2026-09-15 00:47:48.600 INFO : MOQT send: RequestError(request_id=0, error_code=16, retry_interval=0, reason=track does not exist) test-client-1 | 2026-09-15T00:47:48.801559Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:46812 dual_stack=true relay-1 | 2026-09-15 00:47:48.803 INFO : MOQT: version set from ALPN: moqt-18 -> draft-18 relay-1 | 2026-09-15 00:47:48.803 INFO : MOQT event: control message parsed: Setup(options={5: b'relay:4443'})) relay-1 | 2026-09-15 00:47:48.803 INFO : MOQT event: handle d18 Setup: Setup(options={5: b'relay:4443'}) relay-1 | 2026-09-15 00:47:48.803 INFO : MOQT: d18 server control write-uni: 3 relay-1 | 2026-09-15 00:47:48.804 INFO : MOQT event: control message parsed: Publish(request_id=0, track_namespace=["moq-test-00", "0", "10", "3", "24", "7", "3", "40", "24", "2", "7", "2", "0", "-1", "-1", "0"], track_name="moq-test-983c39297276ca37", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None)) relay-1 | 2026-09-15 00:47:48.804 INFO : MOQT event: handle Publish(request_id=0, track_namespace=["moq-test-00", "0", "10", "3", "24", "7", "3", "40", "24", "2", "7", "2", "0", "-1", "-1", "0"], track_name="moq-test-983c39297276ca37", track_alias=0, group_order=None, content_exists=0, largest_group_id=None, largest_object_id=None, forward=None, parameters={}, track_extensions=None) Gracefully stopping... (press Ctrl+C again to force) 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 130