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/eyevinn/mlmrel:latest Client: ghcr.io/englishm/moq-interop-runner-moq-test-client-draft-18:latest URL: moqt://relay:4443 time="2026-10-02T00:46:47Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-10-02T00:46:47Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-10-02T00:46:47Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-10-02T00:46:47Z" level=warning msg="The \"HEX\" variable is not set. Defaulting to a blank string." time="2026-10-02T00:46:47Z" 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 | Starting mlmrel on port 4443 relay-1 | Cert: /certs/cert.pem relay-1 | Key: /certs/priv.key relay-1 | Mlog: /mlog relay-1 | WARNING: /mlog is not writable; qlog goes to stderr relay-1 | time=2026-10-02T00:46:47.814Z level=INFO msg="Starting MoQ server" addr=0.0.0.0:4443 relay-1 | time=2026-10-02T00:46:47.814Z level=INFO msg="failed to sufficiently increase receive buffer size (was: 1024 kiB, wanted: 7168 kiB, got: 2048 kiB). See https://github.com/quic-go/quic-go/wiki/UDP-Buffer-Sizes for details." 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-10-02T00:46:53.425752Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:41866 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902013428.1174}}} relay-1 | time=2026-10-02T00:46:53.428Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.089598,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.230721,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:46:53.428Z level=INFO msg="MoQ session established" version=moqt-18 test-client-1 | ok 1 - setup-only test-client-1 | --- test-client-1 | duration_ms: 3 test-client-1 | connection_id: 281da2f479188a98a9942da8caa6715f test-client-1 | ... test-client-1 | 2026-10-02T00:46:53.428569Z  INFO moq_test_client::scenarios: SETUP exchange completed successfully relay-1 | time=2026-10-02T00:46:53.428Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" test-client-1 | 2026-10-02T00:46:53.429565Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:58050 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902013430.9927}}} relay-1 | time=2026-10-02T00:46:53.431Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.184595,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.351534,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:46:53.431Z level=INFO msg="MoQ session established" version=moqt-18 test-client-1 | 2026-10-02T00:46:53.431487Z  INFO moq_test_client::scenarios: Sending PUBLISH_NAMESPACE for: moq-test/interop relay-1 | {"time":0.720436,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"publish_namespace","request_id":0,"track_namespace":["moq-test","interop"]}}} relay-1 | time=2026-10-02T00:46:53.431Z level=INFO msg="registered announcement" namespace="[moq-test interop]" relay-1 | {"time":0.769277,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_ok"}}} test-client-1 | 2026-10-02T00:46:55.432692Z  INFO moq_test_client::scenarios: PUBLISH_NAMESPACE succeeded (REQUEST_OK received, waiting for subscribers) relay-1 | time=2026-10-02T00:46:55.433Z level=INFO msg="announcement withdrawn" namespace="[moq-test interop]" relay-1 | time=2026-10-02T00:46:55.433Z level=INFO msg="MoQ session ended" reason="session closed: PROTOCOL_VIOLATION: peer closed its control stream" test-client-1 | ok 2 - publish-namespace-only test-client-1 | --- test-client-1 | duration_ms: 2004 test-client-1 | connection_id: d9492c71e08f2aeb382c9ec1c9599782 test-client-1 | ... test-client-1 | 2026-10-02T00:46:55.434076Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:54212 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902015435.9004}}} relay-1 | time=2026-10-02T00:46:55.435Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.072696,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.122112,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:46:55.436Z level=INFO msg="MoQ session established" version=moqt-18 test-client-1 | 2026-10-02T00:46:55.436158Z  INFO moq_test_client::scenarios: Subscribing to non-existent track: nonexistent/namespace/test-track relay-1 | {"time":0.571706,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"subscribe","request_id":0,"track_namespace":["nonexistent","namespace"],"track_name":{"length":10,"payload_length":10,"data":"746573742d747261636b"}}}} relay-1 | time=2026-10-02T00:46:55.436Z level=INFO msg="rejecting subscription to unknown namespace" namespace="[nonexistent namespace]" track=test-track held=0s relay-1 | {"time":0.656634,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_error","error_code":16,"retry_interval":0,"error_reason":"unknown namespace"}}} test-client-1 | 2026-10-02T00:46:55.436781Z  WARN moq_transport::serve::error: [6981e5b8-a7a0-4f7a-aee2-dabae32d1add] Not found: unknown namespace at moq-transport/src/session/subscriber.rs:1653 test-client-1 | 2026-10-02T00:46:55.436907Z  INFO moq_test_client::scenarios: Got expected 'not found' error: not found: Track not found [error:6981e5b8-a7a0-4f7a-aee2-dabae32d1add] test-client-1 | ok 3 - subscribe-error test-client-1 | --- test-client-1 | duration_ms: 3 test-client-1 | connection_id: d590c566478401b500050eb58dbc4307 test-client-1 | ... relay-1 | time=2026-10-02T00:46:55.437Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" test-client-1 | 2026-10-02T00:46:55.437945Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:48771 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902015439.4028}}} relay-1 | time=2026-10-02T00:46:55.439Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.076182,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.24604,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:46:55.439Z level=INFO msg="MoQ session established" version=moqt-18 test-client-1 | 2026-10-02T00:46:55.440376Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:48518 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902015441.7537}}} relay-1 | time=2026-10-02T00:46:55.441Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.074129,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} test-client-1 | 2026-10-02T00:46:55.442070Z  INFO moq_test_client::scenarios: Publisher sending PUBLISH_NAMESPACE: moq-test/interop relay-1 | {"time":0.143615,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:46:55.441Z level=INFO msg="MoQ session established" version=moqt-18 test-client-1 | 2026-10-02T00:46:55.442085Z  INFO moq_test_client::scenarios: Subscriber subscribing to track: moq-test/interop/test-track relay-1 | {"time":0.59397,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"subscribe","request_id":0,"track_namespace":["moq-test","interop"],"track_name":{"length":10,"payload_length":10,"data":"746573742d747261636b"}}}} relay-1 | time=2026-10-02T00:46:55.442Z level=INFO msg="rejecting subscription to unknown namespace" namespace="[moq-test interop]" track=test-track held=0s relay-1 | {"time":2.986218,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"publish_namespace","request_id":0,"track_namespace":["moq-test","interop"]}}} relay-1 | {"time":0.651067,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_error","error_code":16,"retry_interval":0,"error_reason":"unknown namespace"}}} relay-1 | time=2026-10-02T00:46:55.442Z level=INFO msg="registered announcement" namespace="[moq-test interop]" relay-1 | {"time":3.213803,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_ok"}}} relay-1 | time=2026-10-02T00:46:55.442Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" relay-1 | time=2026-10-02T00:46:55.442Z level=INFO msg="announcement withdrawn" namespace="[moq-test interop]" relay-1 | time=2026-10-02T00:46:55.442Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" test-client-1 | ok 4 - publish-namespace-subscribe test-client-1 | --- test-client-1 | duration_ms: 5 test-client-1 | publisher_connection_id: 23ededd750acb8febf23e466fea6a403 test-client-1 | subscriber_connection_id: ed78649e6ab618f4aff2486a42833f33 test-client-1 | ... test-client-1 | 2026-10-02T00:46:55.442654Z  WARN moq_transport::serve::error: [17342756-9356-42f1-bac0-0bfb918dfe0d] Not found: unknown namespace at moq-transport/src/session/subscriber.rs:1653 test-client-1 | 2026-10-02T00:46:55.442701Z  INFO moq_test_client::scenarios: Subscriber got error: not found: Track not found [error:17342756-9356-42f1-bac0-0bfb918dfe0d] - subscription was processed test-client-1 | 2026-10-02T00:46:55.443745Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:54560 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902015445.109}}} relay-1 | time=2026-10-02T00:46:55.445Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.049583,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.061177,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:46:55.445Z level=INFO msg="MoQ session established" version=moqt-18 test-client-1 | 2026-10-02T00:46:55.445327Z  INFO moq_test_client::scenarios: Subscriber subscribing BEFORE PUBLISH_NAMESPACE: moq-test/interop/test-track relay-1 | {"time":0.485273,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"subscribe","request_id":0,"track_namespace":["moq-test","interop"],"track_name":{"length":10,"payload_length":10,"data":"746573742d747261636b"}}}} relay-1 | time=2026-10-02T00:46:55.445Z level=INFO msg="rejecting subscription to unknown namespace" namespace="[moq-test interop]" track=test-track held=0s relay-1 | {"time":0.560423,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_error","error_code":16,"retry_interval":0,"error_reason":"unknown namespace"}}} test-client-1 | 2026-10-02T00:46:55.445817Z  WARN moq_transport::serve::error: [b34badf6-9baa-425c-825d-a3dcfd321796] Not found: unknown namespace at moq-transport/src/session/subscriber.rs:1653 relay-1 | time=2026-10-02T00:46:55.446Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" test-client-1 | 2026-10-02T00:46:55.947501Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:49612 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902015950.5432}}} relay-1 | time=2026-10-02T00:46:55.950Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.052247,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} test-client-1 | 2026-10-02T00:46:55.950911Z  INFO moq_test_client::scenarios: Publisher sending PUBLISH_NAMESPACE (after subscriber): moq-test/interop relay-1 | {"time":0.375782,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:46:55.950Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.560507,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"publish_namespace","request_id":0,"track_namespace":["moq-test","interop"]}}} relay-1 | time=2026-10-02T00:46:55.951Z level=INFO msg="registered announcement" namespace="[moq-test interop]" relay-1 | {"time":0.687073,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_ok"}}} relay-1 | time=2026-10-02T00:46:58.954Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" test-client-1 | 2026-10-02T00:46:58.952745Z  INFO moq_test_client::scenarios: Publisher PUBLISH_NAMESPACE timeout (expected) test-client-1 | 2026-10-02T00:46:58.952768Z  INFO moq_test_client::scenarios: Subscriber got error: not found: Track not found [error:b34badf6-9baa-425c-825d-a3dcfd321796] (may be expected) test-client-1 | 2026-10-02T00:46:58.953557Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:56656 dual_stack=true test-client-1 | ok 5 - subscribe-before-publish-namespace test-client-1 | --- test-client-1 | duration_ms: 3510 test-client-1 | subscriber_connection_id: 75acd6ebfed25335e60d50bfc89af32e test-client-1 | publisher_connection_id: 3de1bae0761eb18b561cd579e355f237 test-client-1 | ... relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902018957.0886}}} relay-1 | time=2026-10-02T00:46:58.957Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.078587,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.17623,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:46:58.957Z level=INFO msg="MoQ session established" version=moqt-18 test-client-1 | 2026-10-02T00:46:58.957483Z  INFO moq_test_client::scenarios: Sending PUBLISH_NAMESPACE: moq-test/interop relay-1 | {"time":0.606513,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"publish_namespace","request_id":0,"track_namespace":["moq-test","interop"]}}} relay-1 | time=2026-10-02T00:46:58.957Z level=INFO msg="registered announcement" namespace="[moq-test interop]" relay-1 | {"time":0.694648,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_ok"}}} test-client-1 | 2026-10-02T00:47:00.958456Z  INFO moq_test_client::scenarios: PUBLISH_NAMESPACE active; sending PUBLISH_NAMESPACE_DONE relay-1 | time=2026-10-02T00:47:00.958Z level=INFO msg="MoQ session ended" reason="session closed: PROTOCOL_VIOLATION: peer closed its control stream" relay-1 | time=2026-10-02T00:47:00.958Z level=INFO msg="announcement withdrawn" namespace="[moq-test interop]" test-client-1 | 2026-10-02T00:47:01.058871Z  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: 071b2f94fdb69804c0537a8432e310c1 test-client-1 | ... test-client-1 | 2026-10-02T00:47:01.060303Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:55763 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902021062.673}}} relay-1 | time=2026-10-02T00:47:01.062Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.101609,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} test-client-1 | 2026-10-02T00:47:01.062999Z  INFO moq_test_client::scenarios: Publisher sending direct PUBLISH namespace=/moq-test/publish track="published-track" relay-1 | {"time":0.328353,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:01.063Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.69254,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"publish","request_id":0,"track_namespace":["moq-test","publish"],"track_name":{"length":15,"payload_length":15,"data":"7075626c69736865642d747261636b"},"track_alias":0}}} relay-1 | {"time":0.836449,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_error","error_code":3,"retry_interval":0,"error_reason":"PUBLISH is not supported"}}} test-client-1 | 2026-10-02T00:47:01.063740Z  WARN moq_transport::session::reader: [READER] decode: stream ended while waiting for data (have=0 bytes, need=1) test-client-1 | not ok 7 - publish-track-only test-client-1 | --- test-client-1 | duration_ms: 4 test-client-1 | message: "PUBLISH was rejected: closed, code=3" test-client-1 | ... relay-1 | time=2026-10-02T00:47:01.063Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" test-client-1 | 2026-10-02T00:47:01.064635Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:47182 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902021066.3328}}} relay-1 | time=2026-10-02T00:47:01.066Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.077906,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.101329,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:01.066Z level=INFO msg="MoQ session established" version=moqt-18 test-client-1 | 2026-10-02T00:47:01.067400Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:33174 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902021070.2664}}} relay-1 | time=2026-10-02T00:47:01.070Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.057036,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.135633,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:01.070Z level=INFO msg="MoQ session established" version=moqt-18 test-client-1 | 2026-10-02T00:47:01.070533Z  INFO moq_test_client::scenarios: Publisher sending direct PUBLISH before subscriber subscribes namespace=/moq-test/publish track="published-track" relay-1 | {"time":4.432508,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"publish","request_id":0,"track_namespace":["moq-test","publish"],"track_name":{"length":15,"payload_length":15,"data":"7075626c69736865642d747261636b"},"track_alias":0}}} relay-1 | {"time":4.475769,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_error","error_code":3,"retry_interval":0,"error_reason":"PUBLISH is not supported"}}} test-client-1 | 2026-10-02T00:47:01.071012Z  WARN moq_transport::session::reader: [READER] decode: stream ended while waiting for data (have=0 bytes, need=1) relay-1 | time=2026-10-02T00:47:01.071Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" test-client-1 | not ok 8 - publish-track-subscribe relay-1 | time=2026-10-02T00:47:01.071Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" test-client-1 | --- test-client-1 | duration_ms: 7 test-client-1 | message: "PUBLISH was rejected: closed, code=3" test-client-1 | ... test-client-1 | 2026-10-02T00:47:01.071930Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:57099 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902021073.4006}}} relay-1 | time=2026-10-02T00:47:01.073Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.060985,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.093044,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} test-client-1 | 2026-10-02T00:47:01.073591Z  INFO moq_test_client::scenarios: Subscribing with RENDEZVOUS_TIMEOUT to a track with no publisher timeout_ms=500 relay-1 | time=2026-10-02T00:47:01.073Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.403935,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"subscribe","request_id":0,"track_namespace":["nonexistent","rendezvous"],"track_name":{"length":10,"payload_length":10,"data":"746573742d747261636b"},"parameters":["{RENDEZVOUS_TIMEOUT: 500}"]}}} relay-1 | time=2026-10-02T00:47:01.574Z level=INFO msg="rejecting subscription to unknown namespace" namespace="[nonexistent rendezvous]" track=test-track held=500ms relay-1 | {"time":501.279808,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_error","error_code":2,"retry_interval":0,"error_reason":"no publisher within 500ms"}}} test-client-1 | 2026-10-02T00:47:01.575198Z  INFO moq_test_client::scenarios: Received expected REQUEST_ERROR TIMEOUT test-client-1 | ok 9 - rendezvous-timeout test-client-1 | --- test-client-1 | duration_ms: 504 test-client-1 | connection_id: 92f9cdd6e7c04f684f177ea26456d34f test-client-1 | ... relay-1 | time=2026-10-02T00:47:01.575Z level=INFO msg="MoQ session ended" reason="session closed: PROTOCOL_VIOLATION: peer closed its control stream" test-client-1 | 2026-10-02T00:47:01.576448Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:41403 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902021578.4136}}} relay-1 | time=2026-10-02T00:47:01.578Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.062216,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.1265,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:01.578Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.501694,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"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":{"length":25,"payload_length":25,"data":"6d6f712d746573742d64343464646334653532323363626639"},"parameters":["{RENDEZVOUS_TIMEOUT: 5000}"]}}} test-client-1 | 2026-10-02T00:47:01.781361Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:53731 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902021783.39}}} relay-1 | time=2026-10-02T00:47:01.783Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.091691,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.106321,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:01.783Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.505961,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"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":{"length":25,"payload_length":25,"data":"6d6f712d746573742d64343464646334653532323363626639"},"track_alias":0}}} relay-1 | {"time":0.543401,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_error","error_code":3,"retry_interval":0,"error_reason":"PUBLISH is not supported"}}} relay-1 | time=2026-10-02T00:47:01.784Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" relay-1 | time=2026-10-02T00:47:01.784Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" relay-1 | time=2026-10-02T00:47:01.784Z level=INFO msg="rejecting subscription to unknown namespace" namespace="[moq-test-00 0 0 0 2 4 5 64 32 2 1 1 0 -1 -1 0]" track=moq-test-d44ddc4e5223cbf9 held=5s relay-1 | time=2026-10-02T00:47:01.784Z level=ERROR msg="failed to reject subscription" error="Application error 0x0 (remote)" test-client-1 | not ok 10 - moq-test-subgroup-per-group test-client-1 | --- test-client-1 | duration_ms: 208 test-client-1 | message: "PUBLISH was rejected: closed, code=3" test-client-1 | ... test-client-1 | 2026-10-02T00:47:01.785198Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:56343 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902021786.7837}}} relay-1 | time=2026-10-02T00:47:01.786Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.047499,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.158042,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:01.787Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.521648,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"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":{"length":25,"payload_length":25,"data":"6d6f712d746573742d65383333333362346233393136643132"},"parameters":["{RENDEZVOUS_TIMEOUT: 5000}"]}}} test-client-1 | 2026-10-02T00:47:01.989553Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:47417 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902021991.714}}} relay-1 | time=2026-10-02T00:47:01.991Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.105607,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.13003,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:01.991Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.565653,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"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":{"length":25,"payload_length":25,"data":"6d6f712d746573742d65383333333362346233393136643132"},"track_alias":0}}} relay-1 | {"time":0.603845,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_error","error_code":3,"retry_interval":0,"error_reason":"PUBLISH is not supported"}}} test-client-1 | not ok 11 - moq-test-subgroup-per-group-eog test-client-1 | --- test-client-1 | duration_ms: 208 test-client-1 | message: "PUBLISH was rejected: closed, code=3" test-client-1 | ... relay-1 | time=2026-10-02T00:47:01.992Z level=INFO msg="MoQ session ended" reason="session closed: PROTOCOL_VIOLATION: peer closed its control stream" test-client-1 | 2026-10-02T00:47:01.993496Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:35789 dual_stack=true relay-1 | time=2026-10-02T00:47:01.993Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" relay-1 | time=2026-10-02T00:47:01.993Z level=INFO msg="rejecting subscription to unknown namespace" namespace="[moq-test-00 0 0 0 2 5 5 64 32 2 1 1 1 -1 -1 0]" track=moq-test-e83333b4b3916d12 held=5s relay-1 | time=2026-10-02T00:47:01.993Z level=ERROR msg="failed to reject subscription" error="Application error 0x0 (remote)" relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902021995.3142}}} relay-1 | time=2026-10-02T00:47:01.995Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.054752,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.251878,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:01.995Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.383583,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"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":{"length":25,"payload_length":25,"data":"6d6f712d746573742d66313865383837353930316362303735"},"parameters":["{RENDEZVOUS_TIMEOUT: 5000}"]}}} test-client-1 | 2026-10-02T00:47:02.197116Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:37135 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902022199.1287}}} relay-1 | time=2026-10-02T00:47:02.199Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.094918,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.194774,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:02.199Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.457398,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"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":{"length":25,"payload_length":25,"data":"6d6f712d746573742d66313865383837353930316362303735"},"track_alias":0}}} relay-1 | {"time":0.509045,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_error","error_code":3,"retry_interval":0,"error_reason":"PUBLISH is not supported"}}} test-client-1 | 2026-10-02T00:47:02.199824Z  WARN moq_transport::session::reader: [READER] decode: stream ended while waiting for data (have=0 bytes, need=1) test-client-1 | not ok 12 - moq-test-subgroup-per-object test-client-1 | --- test-client-1 | duration_ms: 207 test-client-1 | message: "PUBLISH was rejected: closed, code=3" test-client-1 | ... relay-1 | time=2026-10-02T00:47:02.200Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" relay-1 | time=2026-10-02T00:47:02.200Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" relay-1 | time=2026-10-02T00:47:02.200Z level=INFO msg="rejecting subscription to unknown namespace" namespace="[moq-test-00 1 0 0 1 3 4 64 32 2 1 1 0 -1 -1 0]" track=moq-test-f18e8875901cb075 held=5s relay-1 | time=2026-10-02T00:47:02.200Z level=ERROR msg="failed to reject subscription" error="Application error 0x0 (remote)" test-client-1 | 2026-10-02T00:47:02.200986Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:33916 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902022202.5393}}} relay-1 | time=2026-10-02T00:47:02.202Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.054672,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.201557,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:02.202Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.619167,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"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":{"length":25,"payload_length":25,"data":"6d6f712d746573742d66663766316231663731373866386164"},"parameters":["{RENDEZVOUS_TIMEOUT: 5000}"]}}} test-client-1 | 2026-10-02T00:47:02.405047Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:59923 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902022407.1646}}} relay-1 | time=2026-10-02T00:47:02.407Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.090519,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.146837,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:02.407Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.41783,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"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":{"length":25,"payload_length":25,"data":"6d6f712d746573742d66663766316231663731373866386164"},"track_alias":0}}} relay-1 | {"time":0.458135,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_error","error_code":3,"retry_interval":0,"error_reason":"PUBLISH is not supported"}}} test-client-1 | 2026-10-02T00:47:02.407827Z  WARN moq_transport::session::reader: [READER] decode: stream ended while waiting for data (have=0 bytes, need=1) test-client-1 | not ok 13 - moq-test-two-subgroups-eog relay-1 | time=2026-10-02T00:47:02.408Z level=INFO msg="MoQ session ended" reason="session closed: PROTOCOL_VIOLATION: peer closed its control stream" test-client-1 | --- test-client-1 | duration_ms: 208 test-client-1 | message: "PUBLISH was rejected: closed, code=3" test-client-1 | ... relay-1 | time=2026-10-02T00:47:02.408Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" relay-1 | time=2026-10-02T00:47:02.408Z level=INFO msg="rejecting subscription to unknown namespace" namespace="[moq-test-00 2 0 0 2 6 6 64 32 2 1 1 1 -1 -1 0]" track=moq-test-ff7f1b1f7178f8ad held=5s relay-1 | time=2026-10-02T00:47:02.408Z level=ERROR msg="failed to reject subscription" error="Application error 0x0 (remote)" test-client-1 | 2026-10-02T00:47:02.409073Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:38596 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902022412.016}}} relay-1 | time=2026-10-02T00:47:02.412Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.056445,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.11082,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:02.412Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.572742,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"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":{"length":25,"payload_length":25,"data":"6d6f712d746573742d34666138356462356636316339613438"},"parameters":["{RENDEZVOUS_TIMEOUT: 5000}"]}}} test-client-1 | 2026-10-02T00:47:02.614612Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:42292 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902022617.575}}} relay-1 | time=2026-10-02T00:47:02.617Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.083967,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.178443,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:02.617Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.47108,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"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":{"length":25,"payload_length":25,"data":"6d6f712d746573742d34666138356462356636316339613438"},"track_alias":0}}} relay-1 | {"time":0.512738,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_error","error_code":3,"retry_interval":0,"error_reason":"PUBLISH is not supported"}}} test-client-1 | not ok 14 - moq-test-datagram test-client-1 | --- relay-1 | time=2026-10-02T00:47:02.618Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" test-client-1 | duration_ms: 210 test-client-1 | message: "PUBLISH was rejected: cancelled" relay-1 | time=2026-10-02T00:47:02.618Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" test-client-1 | ... relay-1 | time=2026-10-02T00:47:02.618Z level=INFO msg="rejecting subscription to unknown namespace" namespace="[moq-test-00 3 0 0 2 4 5 64 32 20 1 1 0 -1 -1 0]" track=moq-test-4fa85db5f61c9a48 held=5s relay-1 | time=2026-10-02T00:47:02.618Z level=ERROR msg="failed to reject subscription" error="Application error 0x0 (remote)" test-client-1 | 2026-10-02T00:47:02.619375Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:41473 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902022621.0425}}} relay-1 | time=2026-10-02T00:47:02.621Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.055403,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.131796,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:02.621Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.453063,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"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":{"length":25,"payload_length":25,"data":"6d6f712d746573742d32643565343236643930316234663738"},"parameters":["{RENDEZVOUS_TIMEOUT: 5000}"]}}} test-client-1 | 2026-10-02T00:47:02.823493Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:60064 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902022825.6975}}} relay-1 | time=2026-10-02T00:47:02.825Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.102261,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.135747,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:02.825Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.629626,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"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":{"length":25,"payload_length":25,"data":"6d6f712d746573742d32643565343236643930316234663738"},"track_alias":0}}} relay-1 | {"time":0.666074,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_error","error_code":3,"retry_interval":0,"error_reason":"PUBLISH is not supported"}}} test-client-1 | 2026-10-02T00:47:02.826559Z  WARN moq_transport::session::reader: [READER] decode: stream ended while waiting for data (have=0 bytes, need=1) relay-1 | time=2026-10-02T00:47:02.826Z level=INFO msg="MoQ session ended" reason="session closed: PROTOCOL_VIOLATION: peer closed its control stream" test-client-1 | not ok 15 - moq-test-datagram-eog test-client-1 | --- test-client-1 | duration_ms: 208 test-client-1 | message: "PUBLISH was rejected: closed, code=3" test-client-1 | ... relay-1 | time=2026-10-02T00:47:02.826Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" relay-1 | time=2026-10-02T00:47:02.827Z level=INFO msg="rejecting subscription to unknown namespace" namespace="[moq-test-00 3 0 0 2 5 5 64 32 20 1 1 1 -1 -1 0]" track=moq-test-2d5e426d901b4f78 held=5s relay-1 | time=2026-10-02T00:47:02.827Z level=ERROR msg="failed to reject subscription" error="Application error 0x0 (remote)" test-client-1 | 2026-10-02T00:47:02.827737Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:39992 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902022829.3816}}} relay-1 | time=2026-10-02T00:47:02.829Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.056486,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.138679,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:02.829Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.528758,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"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":{"length":25,"payload_length":25,"data":"6d6f712d746573742d37363037373638646664636335366337"},"parameters":["{RENDEZVOUS_TIMEOUT: 5000}"]}}} test-client-1 | 2026-10-02T00:47:03.031949Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:49750 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902023034.0208}}} relay-1 | time=2026-10-02T00:47:03.034Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.089808,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.130223,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:03.034Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.472105,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"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":{"length":25,"payload_length":25,"data":"6d6f712d746573742d37363037373638646664636335366337"},"track_alias":0}}} relay-1 | {"time":0.53371,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_error","error_code":3,"retry_interval":0,"error_reason":"PUBLISH is not supported"}}} relay-1 | time=2026-10-02T00:47:03.035Z level=INFO msg="MoQ session ended" reason="session closed: PROTOCOL_VIOLATION: peer closed its control stream" relay-1 | time=2026-10-02T00:47:03.035Z level=INFO msg="rejecting subscription to unknown namespace" namespace="[moq-test-00 0 0 0 2 5 5 64 32 2 1 1 1 1 2 0]" track=moq-test-7607768dfdcc56c7 held=5s relay-1 | time=2026-10-02T00:47:03.035Z level=ERROR msg="failed to reject subscription" error="Application error 0x0 (remote)" test-client-1 | not ok 16 - moq-test-extensions test-client-1 | --- test-client-1 | duration_ms: 208 test-client-1 | message: "PUBLISH was rejected: cancelled" test-client-1 | ... relay-1 | time=2026-10-02T00:47:03.035Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" test-client-1 | 2026-10-02T00:47:03.035932Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:53243 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902023037.5376}}} relay-1 | time=2026-10-02T00:47:03.037Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.057407,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.125885,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:03.037Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.452765,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"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":{"length":25,"payload_length":25,"data":"6d6f712d746573742d30613935353334383265653532326136"},"parameters":["{RENDEZVOUS_TIMEOUT: 5000}"]}}} test-client-1 | 2026-10-02T00:47:03.240159Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:57023 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902023242.2979}}} relay-1 | time=2026-10-02T00:47:03.242Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.104986,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.130023,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:03.242Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.591192,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"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":{"length":25,"payload_length":25,"data":"6d6f712d746573742d30613935353334383265653532326136"},"track_alias":0}}} relay-1 | {"time":0.636256,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_error","error_code":3,"retry_interval":0,"error_reason":"PUBLISH is not supported"}}} test-client-1 | not ok 17 - moq-test-increments test-client-1 | --- test-client-1 | duration_ms: 208 test-client-1 | message: "PUBLISH was rejected: cancelled" test-client-1 | ... relay-1 | time=2026-10-02T00:47:03.243Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" relay-1 | time=2026-10-02T00:47:03.243Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" relay-1 | time=2026-10-02T00:47:03.243Z level=INFO msg="rejecting subscription to unknown namespace" namespace="[moq-test-00 0 10 3 24 7 3 40 24 2 7 2 0 -1 -1 0]" track=moq-test-0a9553482ee522a6 held=5s relay-1 | time=2026-10-02T00:47:03.243Z level=ERROR msg="failed to reject subscription" error="Application error 0x0 (remote)" test-client-1 | 2026-10-02T00:47:03.244195Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:47687 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902023245.8362}}} relay-1 | time=2026-10-02T00:47:03.245Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.079809,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.096798,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:03.245Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.498929,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"subscribe","request_id":0,"track_namespace":["moq-test-00","0","0","0","1","2","3","64","32","2","1","1","0","-1","-1","0"],"track_name":{"length":25,"payload_length":25,"data":"6d6f712d746573742d30333762343862653563366532303335"},"parameters":["{RENDEZVOUS_TIMEOUT: 5000}","{FORWARD: 0}"]}}} test-client-1 | 2026-10-02T00:47:03.448487Z  INFO moq_native_ietf::quic: UDP socket bound bind=[::]:0 local=[::]:55502 dual_stack=true relay-1 | {"file_schema":"urn:ietf:params:qlog:file:sequential","serialization_format":"application/qlog+json-seq","title":"MoQ QLOG","description":"MoQ QLOG","event_schemas":["urn:ietf:params:qlog:events:moqt-00"],"trace":{"vantage_point":{"type":"server"},"common_fields":{"time_format":"relative","reference_time":1790902023450.6921}}} relay-1 | time=2026-10-02T00:47:03.450Z level=INFO msg="starting MoQ session" perspective=server relay-1 | {"time":0.091511,"name":"moqt:control_message_created","data":{"stream_id":3,"message":{"type":"setup","options":["{key: 7, value: '[69 121 101 118 105 110 110 47 109 111 113 108 105 118 101 109 111 99 107 47 109 108 109 114 101 108]'}"]}}} relay-1 | {"time":0.180106,"name":"moqt:control_message_parsed","data":{"stream_id":2,"message":{"type":"setup","options":["{key: 5, value: '[114 101 108 97 121 58 52 52 52 51]'}"]}}} relay-1 | time=2026-10-02T00:47:03.450Z level=INFO msg="MoQ session established" version=moqt-18 relay-1 | {"time":0.503748,"name":"moqt:control_message_parsed","data":{"stream_id":0,"message":{"type":"publish","request_id":0,"track_namespace":["moq-test-00","0","0","0","1","2","3","64","32","2","1","1","0","-1","-1","0"],"track_name":{"length":25,"payload_length":25,"data":"6d6f712d746573742d30333762343862653563366532303335"},"track_alias":0}}} relay-1 | {"time":0.549603,"name":"moqt:control_message_created","data":{"stream_id":0,"message":{"type":"request_error","error_code":3,"retry_interval":0,"error_reason":"PUBLISH is not supported"}}} test-client-1 | 2026-10-02T00:47:03.451398Z  WARN moq_transport::session::reader: [READER] decode: stream ended while waiting for data (have=0 bytes, need=1) test-client-1 | not ok 18 - moq-test-forward-zero test-client-1 | --- test-client-1 | duration_ms: 208 test-client-1 | message: "PUBLISH was rejected: closed, code=3" relay-1 | time=2026-10-02T00:47:03.451Z level=INFO msg="connection closed" reason="Application error 0x0 (remote)" test-client-1 | ... 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'