This release repairs draft-22 protocol handling across file publishing, live input, native QUIC, and WebTransport.
Fixes
- Reject unnegotiated Range Filters with INVALID_FILTER (
0x36) and unregistered authorization-token aliases with UNKNOWN_AUTH_TOKEN_ALIAS (0x17). - Parse all draft-22 control messages using their length framing, handle fragmented vi64 padding streams, and reject unknown or misplaced messages.
- Respond to unsupported TRACK_STATUS requests without closing a valid session.
- Send namespace discovery notifications, retain discovery request streams, validate updates, and enforce namespace-prefix overlap independently for SUBSCRIBE_NAMESPACE and SUBSCRIBE_TRACKS.
- Validate GOAWAY messages and reject duplicates. Control-stream GOAWAY reconnects to the supplied URI, preserving credentials, TLS configuration, catalog replay, and live media ID continuity.
- Validate WebTransport datagrams, accept valid padding with quoted protocol offers, and drain protocol-error closes before shutdown.
- Add protocol, migration, real WebTransport, and real SRT regression coverage while preserving draft-16 behavior.
Validation
The local test suite passed 31/31 tests. Native QUIC and WebTransport interop checks verified the corrected wire behavior; some evaluator rows remain unscored or have expectations that conflict with the checked-in draft.
See testing documentation for coverage and migration limits.
Full changelog: v0.4.3...v0.4.4