rm -rf mlog/ mkdir -p mlog/relay mlog/client Running interop tests... Relay: moq-interop-relay:local Client: ghcr.io/englishm/moq-interop-runner-stitcher-moq-client:latest URL: https://relay:4443 time="2026-10-26T15:13:28Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-10-26T15:13:28Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-10-26T15:13:28Z" level=warning msg="The \"PORT\" variable is not set. Defaulting to a blank string." time="2026-10-26T15:13:28Z" level=warning msg="The \"HEX\" variable is not set. Defaulting to a blank string." time="2026-10-26T15:13:28Z" level=warning msg="The \"HEX\" variable is not set. Defaulting to a blank string." Container runner-upstream-test-client-1 Recreate Container runner-upstream-test-client-1 Recreated Attaching to relay-1, test-client-1 relay-1 | 2026-10-26T15:13:28.269280Z  WARN moq_sock::bind: UDP receive buffer is smaller than requested; raise `net.core.rmem_max` or expect packet loss under load wanted=8388608 granted=1048576 relay-1 | 2026-10-26T15:13:28.269300Z  WARN moq_sock::bind: UDP send buffer is smaller than requested; raise `net.core.wmem_max` or expect packet loss under load wanted=8388608 granted=212992 relay-1 | 2026-10-26T15:13:28.269479Z  INFO moq_relay::cluster: cluster initialized hop_id=6020514906643179 configured=false relay-1 | 2026-10-26T15:13:28.269543Z  INFO moq_relay::relay: listening addr=[::]:4443 kind="quic" relay-1 | 2026-10-26T15:13:28.269644Z  INFO moq_relay::cluster: no cluster peers configured; running standalone test-client-1 | TAP version 14 test-client-1 | # stitcher-moq-client v0.2.0 (moq-net 0.3.11 via moq-tokio 0.19.24) test-client-1 | # Relay: https://relay:4443 test-client-1 | # Offered: moq-transport-22, moq-transport-21, moq-transport-20, moq-transport-19, moq-transport-18 test-client-1 | 1..7 test-client-1 | ok 1 - setup-only test-client-1 | --- test-client-1 | duration_ms: 80 test-client-1 | negotiated: moq-transport-22 test-client-1 | ... relay-1 | 2026-10-26T15:13:33.961254Z  INFO conn{id=0 remote=[::ffff:172.18.0.3]:57711 session="0e8ac311728c5db304d1192d27e3df90" implementation="moq-lite-rs"}: moq_relay::cluster: session accepted transport=webtransport request.role=None tier= root= publish=Some(Patterns([Pattern("**")])) subscribe=Some(Patterns([Pattern("**")])) relay-1 | 2026-10-26T15:13:33.961381Z  INFO conn{id=0 remote=[::ffff:172.18.0.3]:57711 session="0e8ac311728c5db304d1192d27e3df90" implementation="moq-lite-rs"}: moq_relay::connection: negotiated version=moq-transport-22 transport=webtransport test-client-1 | ok 2 - announce-only test-client-1 | --- test-client-1 | duration_ms: 703 test-client-1 | negotiated: moq-transport-22 test-client-1 | outcome: "PUBLISH_NAMESPACE not rejected: session healthy 700 ms later (moq-net does not surface PUBLISH_NAMESPACE_OK)" test-client-1 | ... relay-1 | 2026-10-26T15:13:34.662301Z  WARN conn{id=0 remote=[::ffff:172.18.0.3]:57711 session="0e8ac311728c5db304d1192d27e3df90" implementation="moq-lite-rs"}: moq_net::ietf::session: session error err=no error relay-1 | 2026-10-26T15:13:34.662502Z  WARN conn{id=0 remote=[::ffff:172.18.0.3]:57711 session="0e8ac311728c5db304d1192d27e3df90" implementation="moq-lite-rs"}: moq_relay::connection: connection closed id=0 err=cancelled relay-1 | 2026-10-26T15:13:34.665303Z  INFO conn{id=1 remote=[::ffff:172.18.0.3]:57711 session="8258ca7ee98dac947813dd64f7e54bed" implementation="moq-lite-rs"}: moq_relay::cluster: session accepted transport=webtransport request.role=None tier= root= publish=Some(Patterns([Pattern("**")])) subscribe=Some(Patterns([Pattern("**")])) relay-1 | 2026-10-26T15:13:34.665365Z  INFO conn{id=1 remote=[::ffff:172.18.0.3]:57711 session="8258ca7ee98dac947813dd64f7e54bed" implementation="moq-lite-rs"}: moq_relay::connection: negotiated version=moq-transport-22 transport=webtransport test-client-1 | ok 3 - publish-namespace-done test-client-1 | --- test-client-1 | duration_ms: 804 test-client-1 | negotiated: moq-transport-22 test-client-1 | outcome: "PUBLISH_NAMESPACE_DONE sent; session healthy 300 ms later" test-client-1 | ... relay-1 | 2026-10-26T15:13:35.466907Z  WARN conn{id=1 remote=[::ffff:172.18.0.3]:57711 session="8258ca7ee98dac947813dd64f7e54bed" implementation="moq-lite-rs"}: moq_net::ietf::session: session error err=protocol violation relay-1 | 2026-10-26T15:13:35.467662Z  WARN conn{id=1 remote=[::ffff:172.18.0.3]:57711 session="8258ca7ee98dac947813dd64f7e54bed" implementation="moq-lite-rs"}: moq_relay::connection: connection closed id=1 err=protocol violation relay-1 | 2026-10-26T15:13:35.469419Z  INFO conn{id=2 remote=[::ffff:172.18.0.3]:57711 session="8a87e66fdd0c628004ac5832a5781312" implementation="moq-lite-rs"}: moq_relay::cluster: session accepted transport=webtransport request.role=None tier= root= publish=Some(Patterns([Pattern("**")])) subscribe=Some(Patterns([Pattern("**")])) relay-1 | 2026-10-26T15:13:35.469482Z  INFO conn{id=2 remote=[::ffff:172.18.0.3]:57711 session="8a87e66fdd0c628004ac5832a5781312" implementation="moq-lite-rs"}: moq_relay::connection: negotiated version=moq-transport-22 transport=webtransport test-client-1 | ok 4 - subscribe-error # SKIP moq-net answers a request for an unannounced path locally (unroutable); no SUBSCRIBE reached the relay test-client-1 | --- test-client-1 | duration_ms: 304 test-client-1 | negotiated: moq-transport-22 test-client-1 | outcome: "request answered locally: unroutable" test-client-1 | ... test-client-1 | ok 5 - rendezvous-timeout # SKIP not implemented: moq-net 0.3 cannot put RENDEZVOUS_TIMEOUT on a SUBSCRIBE test-client-1 | --- test-client-1 | duration_ms: 0 test-client-1 | ... relay-1 | 2026-10-26T15:13:35.771555Z  WARN conn{id=2 remote=[::ffff:172.18.0.3]:57711 session="8a87e66fdd0c628004ac5832a5781312" implementation="moq-lite-rs"}: moq_net::ietf::session: session error err=no error relay-1 | 2026-10-26T15:13:35.771787Z  WARN conn{id=2 remote=[::ffff:172.18.0.3]:57711 session="8a87e66fdd0c628004ac5832a5781312" implementation="moq-lite-rs"}: moq_relay::connection: connection closed id=2 err=cancelled relay-1 | 2026-10-26T15:13:35.775019Z  INFO conn{id=3 remote=[::ffff:172.18.0.3]:57711 session="b39c062ff7520d0a87849bec2b7711c2" implementation="moq-lite-rs"}: moq_relay::cluster: session accepted transport=webtransport request.role=None tier= root= publish=Some(Patterns([Pattern("**")])) subscribe=Some(Patterns([Pattern("**")])) relay-1 | 2026-10-26T15:13:35.775080Z  INFO conn{id=3 remote=[::ffff:172.18.0.3]:57711 session="b39c062ff7520d0a87849bec2b7711c2" implementation="moq-lite-rs"}: moq_relay::connection: negotiated version=moq-transport-22 transport=webtransport relay-1 | 2026-10-26T15:13:36.079246Z  INFO conn{id=4 remote=[::ffff:172.18.0.3]:57711 session="5216e8ab857b3e9776b20bbbc55cf96f" implementation="moq-lite-rs"}: moq_relay::cluster: session accepted transport=webtransport request.role=None tier= root= publish=Some(Patterns([Pattern("**")])) subscribe=Some(Patterns([Pattern("**")])) relay-1 | 2026-10-26T15:13:36.079318Z  INFO conn{id=4 remote=[::ffff:172.18.0.3]:57711 session="5216e8ab857b3e9776b20bbbc55cf96f" implementation="moq-lite-rs"}: moq_relay::connection: negotiated version=moq-transport-22 transport=webtransport relay-1 | 2026-10-26T15:13:36.282382Z  WARN conn{id=4 remote=[::ffff:172.18.0.3]:57711 session="5216e8ab857b3e9776b20bbbc55cf96f" implementation="moq-lite-rs"}: moq_net::ietf::session: session error err=protocol violation relay-1 | 2026-10-26T15:13:36.282812Z  WARN conn{id=4 remote=[::ffff:172.18.0.3]:57711 session="5216e8ab857b3e9776b20bbbc55cf96f" implementation="moq-lite-rs"}: moq_relay::connection: connection closed id=4 err=protocol violation test-client-1 | ok 6 - announce-subscribe test-client-1 | --- test-client-1 | duration_ms: 611 test-client-1 | negotiated: moq-transport-22 test-client-1 | outcome: "relay routed the SUBSCRIBE to the publisher (0 ms), no REQUEST_ERROR followed" test-client-1 | ... relay-1 | 2026-10-26T15:13:36.383647Z  WARN conn{id=3 remote=[::ffff:172.18.0.3]:57711 session="b39c062ff7520d0a87849bec2b7711c2" implementation="moq-lite-rs"}: moq_net::ietf::session: session error err=no error relay-1 | 2026-10-26T15:13:36.383833Z  WARN conn{id=3 remote=[::ffff:172.18.0.3]:57711 session="b39c062ff7520d0a87849bec2b7711c2" implementation="moq-lite-rs"}: moq_relay::connection: connection closed id=3 err=cancelled relay-1 | 2026-10-26T15:13:36.386249Z  INFO conn{id=5 remote=[::ffff:172.18.0.3]:57711 session="7af3548087a588e9d30c36224144233b" implementation="moq-lite-rs"}: moq_relay::cluster: session accepted transport=webtransport request.role=None tier= root= publish=Some(Patterns([Pattern("**")])) subscribe=Some(Patterns([Pattern("**")])) relay-1 | 2026-10-26T15:13:36.386314Z  INFO conn{id=5 remote=[::ffff:172.18.0.3]:57711 session="7af3548087a588e9d30c36224144233b" implementation="moq-lite-rs"}: moq_relay::connection: negotiated version=moq-transport-22 transport=webtransport relay-1 | 2026-10-26T15:13:37.490851Z  INFO conn{id=6 remote=[::ffff:172.18.0.3]:57711 session="6e907bbe5406e45b1bdf8bc5d2391f48" implementation="moq-lite-rs"}: moq_relay::cluster: session accepted transport=webtransport request.role=None tier= root= publish=Some(Patterns([Pattern("**")])) subscribe=Some(Patterns([Pattern("**")])) relay-1 | 2026-10-26T15:13:37.490924Z  INFO conn{id=6 remote=[::ffff:172.18.0.3]:57711 session="6e907bbe5406e45b1bdf8bc5d2391f48" implementation="moq-lite-rs"}: moq_relay::connection: negotiated version=moq-transport-22 transport=webtransport relay-1 | 2026-10-26T15:13:37.694328Z  WARN conn{id=5 remote=[::ffff:172.18.0.3]:57711 session="7af3548087a588e9d30c36224144233b" implementation="moq-lite-rs"}: moq_net::ietf::session: session error err=no error relay-1 | 2026-10-26T15:13:37.694566Z  WARN conn{id=5 remote=[::ffff:172.18.0.3]:57711 session="7af3548087a588e9d30c36224144233b" implementation="moq-lite-rs"}: moq_relay::connection: connection closed id=5 err=cancelled test-client-1 | ok 7 - subscribe-before-announce test-client-1 | --- test-client-1 | duration_ms: 1411 test-client-1 | negotiated: moq-transport-22 test-client-1 | outcome: "subscriber connected first; nothing resolved until the late announce, which the relay routed to it; the SUBSCRIBE then reached the publisher (0 ms), no REQUEST_ERROR followed (moq-net sends SUBSCRIBE only after an announce)" test-client-1 | ... relay-1 | 2026-10-26T15:13:37.795357Z  WARN conn{id=6 remote=[::ffff:172.18.0.3]:57711 session="6e907bbe5406e45b1bdf8bc5d2391f48" implementation="moq-lite-rs"}: moq_net::ietf::session: session error err=no error relay-1 | 2026-10-26T15:13:37.795571Z  WARN conn{id=6 remote=[::ffff:172.18.0.3]:57711 session="6e907bbe5406e45b1bdf8bc5d2391f48" implementation="moq-lite-rs"}: moq_relay::connection: connection closed id=6 err=cancelled test-client-1 exited with code 0 Aborting on container exit... Container runner-upstream-test-client-1 Stopping Container runner-upstream-test-client-1 Stopped Container runner-upstream-relay-1 Stopping Container runner-upstream-relay-1 Stopped Test results in mlog/