nixos: disable moq-native websocket fallback for wt-publish

This commit is contained in:
every.channel 2026-02-18 00:55:24 -08:00
parent 97c83961c5
commit d8ae2ac747
No known key found for this signature in database
2 changed files with 4 additions and 0 deletions

View file

@ -59,6 +59,7 @@ newer draft implementations.
Implementation choice: Implementation choice:
- Cloudflare's relay preview currently does **not** support `ANNOUNCE` (namespace-style publishing). `ec-node wt-publish` uses the `moq-lite` publish model via `moq-native` and `moq-mux` (fMP4 ingestion) for Cloudflare relay compatibility. - Cloudflare's relay preview currently does **not** support `ANNOUNCE` (namespace-style publishing). `ec-node wt-publish` uses the `moq-lite` publish model via `moq-native` and `moq-mux` (fMP4 ingestion) for Cloudflare relay compatibility.
- On NixOS deployments, we disable `moq-native`'s WebSocket fallback (`MOQ_CLIENT_WEBSOCKET_ENABLED=false`) to ensure WebTransport (QUIC) is used. This avoids the WebSocket path occasionally "winning" the race and then failing MoQ negotiation against the Cloudflare relay, causing rapid reconnect loops.
### Share link ### Share link

View file

@ -80,6 +80,9 @@ in
type = lib.types.attrsOf lib.types.str; type = lib.types.attrsOf lib.types.str;
default = { default = {
RUST_LOG = "info"; RUST_LOG = "info";
# Cloudflare's relay is WebTransport-first; moq-native's WebSocket fallback can "win"
# the race and then fail MoQ negotiation, causing a tight reconnect loop.
MOQ_CLIENT_WEBSOCKET_ENABLED = "false";
}; };
description = "Environment variables for the publisher services."; description = "Environment variables for the publisher services.";
}; };