Summary of active discussions in the MOQ ecosystem during September 2026.
Activity (Sep 1 → Sep 2) — the ink is barely dry on draft-20 and the editors open the draft-21 restructuring; “Forwarding Preference” is renamed to “Delivery Mode,” the long-pending interim-22 minutes finally post, and moq-rs clears conformance Sections 1 & 2 on the eve of the Sep-2 hackathon. The window’s durable spec story is that post-draft-20 editorial restructuring began the day after draft-20 shipped — exactly the interim-21-forecast pipeline (draft-20 = editorial cut → draft-21 = editorial-meeting output → draft-22 = next interop target). On Sep-1 the moq-transport editors merged a large “Draft Restructuring Phase I” (#1877, vasilvv, +3138/−3110, move-only edits), renamed “Forwarding Preference” → “Delivery Mode” (#1886, ianswett), and pushed a cluster of wire-format section-restructuring PRs (Range/Location-Filter and Track-Namespace wire-format moves, Authorization-Token-Compression section, “subscription”/Canonical-Object-Properties definitions, error-code moves) — all editorial, no new mechanisms, feeding draft-21. Two new open questions landed alongside: Swett’s issue #1875 flags that “forcing SUBSCRIBE to always use Track Alias is becoming complex” (a direct follow-on tension to the Track-Alias-re-use guidance #1856 that draft-20 just shipped, with OPEN #1876 proposing Track Alias be returned as a SUBSCRIBE_OK parameter), and vasilvv’s issue #1889 on how the multiple subscription-pausing mechanisms interact. On the datatracker/list, the interim-2026-moq-22 (Aug-24) minutes finally posted (datatracker doc rev-00, Aug-31 12:51 UTC; Magnus Westerlund announced them on the list Sep-1) — resolving a multi-update “minutes unposted” watch — confirming the Aug-24 decisions (keep Set-ID “or” filters; add Parameters to SUBSCRIBE_NAMESPACE, unilateral-only; relays ignore conflicting immutable cache values; nonexistent→existent object = malformed-track, not a connection error; PR #1770 default-priority closed pending list feedback; Top Tracks to lean on PUBLISH_NOTIFY). No new draft revision (transport-20 stands), no new individual draft, no new weekly digest (next due ~Sep-6), no new MoQ Monthly (#2). On Slack #moq, the conformance thread turned another notch: after English landed a datagram fix on draft-18-dev, afrind re-ran the moxygen suite (Sep-1 05:08 CEST) and reported moq-rs-18 now passes Sections 1 and 2 (up from Section 1 tests 1–3 with datagrams failing) — “Section 3 had some troubles, I’m checking.” On implementations, two tagged releases and a new relay: moq cut moq-relay 0.14.14 (Sep-2) and began honoring draft-20 Location Filters (#3297); moqtransport v0.12.0 “receive-side fixes for relays”; and moqlivemock gained a new mlmrel relay component (fanout + group cache + FETCH relaying, #136, tobbee, +2913/−233). moq-rs landed a large rendezvous-teardown fix on draft-18-dev (#227, +4308/−738), no release. The interop-runner enrolled a stitcher-moq client (runner #116) and gave moq-go a draft-20 (moqt-20) ALPN (#117); the conformance-test integration (runner #103) remains OPEN. Interop: the Sep-1 cut — 347 / 126 / 210 / 11 — trimmed the matrix by 4 cells but saw at-target draft-18 jump +21 to 231 (behind −25 to 113) as implementations converge on draft-18 ahead of the Sep-2 virtual interop hackathon (today). No open wiki issues.
WG: post-draft-20 editorial restructuring begins — “Forwarding Preference” becomes “Delivery Mode”
One day after moq-transport draft-20 shipped, the editors opened the draft-21 restructuring pass — the “editorial meeting’s output” the interim-2026-moq-21 minutes named (draft-20 editorial cut → draft-21 editorial-meeting output → draft-22 next interop target). All Sep-1, all editorial, no new wire mechanisms:
- “Draft Restructuring Phase I: move-only edits” (#1877, vasilvv, +3138/−3110) — a large section-reordering pass that deliberately moves text without changing it, so the substantive diffs that follow are readable.
- Rename “Forwarding Preference” → “Delivery Mode” (#1886, ianswett), with a companion pass removing the old “Forwarding Preference” mentions (#1891, vasilvv). A terminology change touching one of MoQT’s core concepts (how a track’s objects map onto streams/datagrams) — durable enough that implementers and the wiki should start using “Delivery Mode.”
- Structural section moves: restructure/reorder “Publishing and Receiving Tracks” (#1885/#1893, afrind); pull the Range Filter (#1892), Location Filter (#1888), and Track Namespace (#1887) wire formats into their own subsections; add an Authorization Token Compression section (#1882); define the term “subscription” (#1884, vasilvv) and a Canonical Object Properties section (#1883, ianswett); plus error-code/section moves (#1878–#1881) and the datagram/object-header editorial refactor (#1874, suhasHere) that was left OPEN at the draft-20 cut.
- Still OPEN after the day’s work: a Filter Sets subsection (#1894, suhasHere), a Namespace Discovery refactor (#1890, suhasHere), the Track-Alias-as-SUBSCRIBE_OK-parameter change (#1876, ianswett), and the two structural diagrams carried over from draft-20 (#1865/#1866, vasilvv).
Two new open questions surfaced the same day, both added to the moq-transport open-design-questions list:
- Swett’s issue #1875 — “Forcing SUBSCRIBE to always use Track Alias is becoming complex.” This is a direct follow-on tension to the Track-Alias-re-use guidance (#1856) that draft-20 just shipped: the always-Track-Alias model is accreting edge cases, and OPEN #1876 proposes returning Track Alias as a SUBSCRIBE_OK parameter instead. Worth watching as the restructuring settles.
- vasilvv’s issue #1889 — “Document how multiple mechanisms for pausing subscriptions can interact” (Range/Location filters, FORWARD/pausing, subscription state) now that several pausing knobs coexist.
All other WG repos (msf / loc / secure-objects / cmsf / catalog-format / privacy-pass) were quiet. Details on moq-transport.
Datatracker & list: the interim-22 (Aug-24) minutes finally post
After sitting unposted for a week — a “minutes pending” line the log carried across ~six updates — the interim-2026-moq-22 minutes (Aug-24 virtual interim) landed on the datatracker (minutes-interim-2026-moq-22-202608241630, rev-00, posted 2026-08-31T12:51 UTC) and Magnus Westerlund announced them on the mailing list (Sep-1 08:10 UTC, permalink). The minutes confirm the Aug-24 session’s decisions:
- Keep the Set-ID-based “or” filters — the group rejected removing them (useful for property filtering and relay deduplication).
- Add Parameters to
SUBSCRIBE_NAMESPACE(aligning withPUBLISH_NAMESPACEextensibility), restricted to unilateral signaling — noREQUEST_UPDATE(the direction Swett’s PR #1858 took, Fixes #1800). - Cache conflict resolution: when a relay receives conflicting immutable field values, it ignores the later updates (issue #1703).
- State transitions: a nonexistent→existent object-state transition is a “malformed track” error, not a connection-terminating protocol error.
- PR #1770 (default/updatable priority) was closed pending fresh mailing-list feedback; Top Tracks (#1830) will lean on the newly-merged
PUBLISH_NOTIFYmechanism. - Action items: Mo Zanaty + Ian Swett to write editorial guidance on joining-fetch configuration; Mo to update the Top Tracks PR; editors to take remaining issues to the in-person editorial meeting (Seattle, Oct).
Otherwise the document layer held flat: draft-ietf-moq-transport-20 stands (no newer revision), no new individual draft was submitted, the weekly GitHub digest is not yet due (last Aug-30; next ~Sep-6), and MoQ Monthly remains at #2. See interim-meetings.
Slack: moq-rs conformance reaches Sections 1 & 2
The Aug-30 #moq conformance thread advanced again. After English’s datagram fix landed on the draft-18-dev branch (Aug-31 23:35 CEST), afrind re-ran the moxygen conformance suite and reported (Sep-1 05:08 CEST): “Sections 1 and 2 passed for your moq-rs-18 Mike. Section 3 had some troubles, I’m checking.” That is a clean step up from the Aug-31 state (Section 1 tests 1–3 passing, Test 4 DATAGRAM failing) — the datagram fix worked, moq-rs now clears the full first two conformance sections on QUIC and WebTransport, and Section 3 is the current front. #moq-rs, #moq-js were silent; the #moq-interop-runner channel’s moq-test-into-the-runner thread was all Aug-31 (already logged with runner #103). See moq-rs and interop-runner.
Implementations: two releases, a new Eyevinn relay, and draft-20 Location Filters
- moq (Curley) — cut a release (moq-relay
0.14.14, Sep-2 00:02 UTC, via #3309; libmoq 0.5.12, moq-token-cli 0.5.46, hang 0.20.9) and began honoring draft-20 Location Filters (#3297 “honor draft-20 Location Filters and serve fills”, +1619/−101) — moq-dev tracking the just-published draft-20 filter semantics on its IETF adapter path — plus draft-20 merge-regression repairs (#3301) and a timescale-stamping fix (#3310), atop the usual high-volumechore(quest)planning churn. - moqtransport — tagged v0.12.0 “receive-side fixes for relays” (Sep-1 10:39 UTC): #23 “receive side: complete delivery, surface subgroup ends” (+488/−59) and #24 running the session suite under
testing/synctest. Bumps the Go library one minor past the v0.11.1 that the v0.14.0 Eyevinn-stack tags shipped on. - moqlivemock — gained a new relay component
mlmrel: #136 (tobbee, +2913/−233, Sep-1) adds “a MoQ relay with fanout, group cache and FETCH relaying.” The Eyevinn stack — previously publisher (mlmpub) + subscriber (mlmsub) + interop client (mlmtest) — now has its own relay, with OPEN follow-ups formoqt://subscriber URLs (#134) and further relay work (#135). No new tag — v0.14.0 stands. - moq-rs — #227 “preserve ordered rendezvous teardown” (nnazo, +4308/−738, Sep-1 18:31) and #226 “await publish terminal delivery” (Sep-1 00:33), both on
draft-18-dev. The umbrella #176 “Support draft-18” stays OPEN; no new release — v0.7.26 stands. - moq-interop-runner — merged #116 “Add stitcher-moq test client” (Steven Riedl, +4303/−3) — so Pluto TV / Paramount’s
stitcher-moqis now a client as well as the relay it was enrolled as Aug-27 — plus #117 advertising draft-20 (moqt-20) ALPN formoq-go, #118 image-rebuild workflow alignment, and #114moqlivemockdraft-18. PR #103 (the direct-PUBLISH-lifecycle conformance tests) and companion #115 (data-plane tests) remain OPEN; new OPEN #119 addsmoq-playa(a@moqtTypeScript draft-18 client). - libquicr — #924 “Thread safe connection delegate” (RichLogan, +21/−9). Quiet: moq-js, moqtail, imquic, moxygen, moqx (one new OPEN issue #663 “Crash during pub teardown”), quiche (moqt dir last
3c4812cAug-28), warp-player (v0.14.0), birneee/quiche_moq.
Interop: matrix trims −4 but draft-18 convergence pushes at-target +21
The runner published one new cut — 2026-09-01 00:31:10 UTC — 347 / 126 / 210 / 11 (at-target draft-18 231 · ahead 3 · behind 113). The matrix shrank 4 cells (351 → 347, skip +1 to 11), but the composition shifted markedly toward the target: at-target draft-18 rose +21 (210 → 231) while behind fell −25 (138 → 113) — roughly two dozen cells reclassifying from an older draft onto draft-18 as implementations converge ahead of the Sep-2 virtual interop hackathon (today). Pass ticked +1 to 126; the relay roster now lists moq-rs, moq-rs-draft-14 and moq-rs-draft-18 as distinct endpoints, reflecting the conformance split. This is the draft-18 broadening the hackathon is meant to harden — see interop-runner.