Skip to content

quest: plan follow-ups from the 2026-11-02 /quest-complete round - #7640

Merged
kixelated merged 1 commit into
mainfrom
quest-plan/followups-2026-11-02
Nov 2, 2026
Merged

kixelated merged 1 commit into
mainfrom
quest-plan/followups-2026-11-02

Conversation

@kixelated

Copy link
Copy Markdown
Collaborator

Summary

Plans the follow-ups the maintainer picked on 2026-11-02 from the PRs in that day's /quest-complete round. Each quest links the PR it came from.

New quests

Edits

Already covered, so not planned again: the moq-tokio, JS close-drain and boundary-sync flakes (m0 test-flakes-2), jitter on a same-codec reconfigure (hls-conformance), thin vs fat LTO (audit-compile-time), and DASH across a reconfigure (dash-reconfigure).

Decisions

  • moq-c gated callback: ✅ m0 · m1 · m2 · drop
  • Timestamp check in moq-sign and moq-e2ee (maintainer: combine the packages before the cut instead):
    • Name: ✅ moq-crypto · moq-secure · keep moq-e2ee and absorb signing
    • JS: ✅ merge @moq/sign and @moq/e2ee into @moq/crypto · Rust only
    • Layout: ✅ plain sign and e2ee modules · Cargo features
    • Published moq-e2ee 0.0.19: ✅ final deprecation release pointing at moq-crypto · leave as is · yank
  • Relay serve_ws windows test: ✅ fold into fastest-reader (m1) · own m2 quest · drop
  • Browser receive credit: ✅ m2 condition quest, with JS parity moved to an m2 quest that requires it · m1 required by fastest-reader · drop
  • Resume more than one group behind: ✅ m1 · fold into hole markers · m2 · drop
  • fMP4 1-byte-chunk slowdown: ✅ m2 · m1 release-perf · drop
  • moq-quic readable events and idle bytes: ✅ m1 · m2 performance survey · drop
  • Bench pool gauges and RSS: ✅ m2 · drop
  • ffmpeg multichannel FLAC in MKV: ✅ m2 · m1 · drop
  • DASH across a reconfigure: ✅ m2 (already planned as dash-reconfigure; only the hls-reinit Required edit is new) · m1 · drop
  • Interop draft 20: ✅ add draft 20 · keep 18 and 22
  • Route health resume and idle timeout: ✅ fold into route-health m2 · only the resume · drop both
  • Feedback media test: ✅ m2 stats epic · drop
  • Typed stats epoch: ✅ m1 · m2 · drop
  • Binary release publishers on their tag: ✅ m0 ci · m2 · drop
  • uid_map flake-lane skip: ✅ m0 ci · drop

Checks

quest check (551 documents) and quest gate nix develop --command just check origin/main pass.

Review

Codex gpt-6.1-sol, medium effort, via quest review --base origin/main, session 01a19e89-c9fb-71a3-9e22-a7559d79d2d2, round 1, reviewed head a663fb8e28978a45030470d6de11b177d0500940 against base 2738588cfc: no findings.

(Written by Claude Opus 5.5)

🤖 Generated with Claude Code

New quests for the follow-ups the maintainer picked, each linked to its source
PR: moq-c's gated-callback use-after-free (m0 flakes), binary release
publishers on their tag and the uid_map flake-lane skip (m0 ci), moq-crypto
merging moq-sign and moq-e2ee, resumes more than one group behind, moq-quic's
burst-sized idle state, and a typed stats epoch (m1), plus browser receive
credit, JS fastest-reader pacing, the fMP4 1-byte-chunk bisect, relay bench
pool gauges, ffmpeg multichannel FLAC in MKV, the relay idle timeout, and a
feedback media test (m2).

Edits: interop coverage adds draft 20; hls-reinit-same-codec requires the m0
declared-grid export; route recovery records the warm/cold cache resume;
fastest-reader moves JS parity to m2 and gains a relay-level serve_ws test.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@kixelated kixelated left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Automated review by review (OpenAI)

Reviewed commit: a663fb8

No actionable bugs found. The follow-ups target root causes, retain release and browser prerequisites, and favor existing mechanisms over new compatibility machinery. Separating investigation from a presumed fix is appropriate for the performance and route-health work.

Static source review only. I did not run the documentation gate, reproduce the reported failures or measurements, or verify browser capabilities.

@kixelated
kixelated added this pull request to the merge queue Nov 2, 2026

@pullfrog pullfrog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ℹ️ No critical issues — two minor plan-text corrections inline.

Reviewed changes

  • New m0 quests: release-tag-publishers and userns-uid-map (CI, from #7431/#7461), and moq-c-gated-callback (test flakes, the SIGABRT from #7461), indexed in their READMEs.
  • New m1 quests: moq-crypto (merge moq-sign/moq-e2ee, from #7614), ietf-resume-behind (#7631), quic-readable-dedupe (#7528), stats-epoch-type (#7489).
  • New m2 quests: browser-receive-credit + js-fastest-reader (#7624), fmp4-byte-chunk-perf (#7628), bench-uring-pool (#7233), mkv-flac-channel-mask (#7629), route-health/idle-timeout (#7096), stats/feedback-media-test (#7222).
  • Edits: interop-coverage adds draft 20, hls-reinit-same-codec gains its hls-media-grid Required, fastest-reader moves JS parity to m2, route-health/recovery records the warm/cold resume behavior, and the milestone/epic READMEs index the new files.

Every cited PR number, file:line, symbol, and cross-link checked against head (including on_track, gated_callback, TrackState::answered, receive_bursts, moq export echo, hls-media-grid, and the 0.0.19 crates.io release) resolves correctly; no duplicate quests found.

Pullfrog  | Fix all ➔ | Fix 👍s ➔ | View workflow run | Using deepseek-v4.1-flash (free via Pullfrog for OSS) | 𝕏


Decided 2026-11-02 (maintainer, follow-up planning after the 2026-11-02 /quest-complete run): draft 20 joins the covered drafts, since it came back in
[moq-dev/moq#7190](https://github.com/moq-dev/moq/pull/7190) and every published moq-dev client and relay already offers it (verified on
[moq-dev/moq#6972](https://github.com/moq-dev/moq/pull/6972)). Where this Plan says drafts 18 and 22, read 18, 20, and 22.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This note tells the reader to substitute "18, 20, and 22" manually, but line 42 still opens Drafts 18 and 22 only, nightly: and line 43 links moq-transport 18 and 22 only (whose title is now "moq-transport 18, 20, and 22 only"). AGENTS asks stale text be fixed inline, so editing those two spots removes both the contradiction and the override note.


## Goal

`moq_stats::GroupFrame::epoch` carries a dedicated type rather than a bare

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

GroupFrame::epoch is typed moq_net::Instance (rs/moq-stats/src/lib.rs:135), not a bare integer; #7489's suggestion was that it reuses moq_net::Instance for its UUIDv7 text and would read clearer with a type of its own. Rewording to "rather than reusing moq_net::Instance" makes the Goal match the actual starting point.

Merged via the queue into main with commit 3968396 Nov 2, 2026
4 of 6 checks passed
@kixelated
kixelated deleted the quest-plan/followups-2026-11-02 branch November 2, 2026 23:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant