Skip to content

quest: plan follow-ups from the 2026-10-13 merge pass - #5419

Merged
kixelated merged 2 commits into
mainfrom
plan/quest-complete-follow-ups
Oct 13, 2026
Merged

kixelated merged 2 commits into
mainfrom
plan/quest-complete-follow-ups

Conversation

@kixelated

@kixelated kixelated commented Oct 13, 2026 •

Copy link
Copy Markdown
Collaborator

Problem

PRs merged on 2026-10-13 surfaced four follow-ups with no owner, or with an owner that is blocked.

Approach

Decisions

  1. Where does TRACK_STATUS in @moq/net live?
  2. How does the JS publisher answer for a track that isn't live yet?
    • ✅ Mirror Rust: resolve through the origin like a SUBSCRIBE (dynamic handlers included), wait for track info, answer OK; a cancelled request releases its demand; requests are grant-gated
    • Answer only for tracks already published, NOT_FOUND otherwise
  3. Where does the origin forget bench go?
    • ✅ Its own [XS] m1 quest
    • Fold it into js-request-deadline
    • An m2 quest
  4. What happens to audio-quality rows too noisy to bound?
    • ✅ Every row stays budgeted, with a wider ceiling taken from the measured spread
    • Add a per-row exclusion to the harness
  5. Where does the moq-transport double poll go?
    • ✅ An [S] m2 quest
    • An [S] m1 quest
    • No quest

Impact

Quest files only. No code, API, or wire change. quest check passes.

(Written by Claude Opus 5.5)

🤖 Generated with Claude Code


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.

- m1 js-track-status: split out of js-fetch; the JS publisher answers
  TRACK_STATUS like Rust (from #5409).
- m1 js-forget-bench: sweep cancellation over competing dynamic routes
  (from #5411).
- m2 ietf-driver-double-poll: IETF drivers still poll twice per fired
  deadline (from #5393).
- m0 audio-quality-budgets: every row stays budgeted; measure across
  scheduled nightlies, never a branch dispatch (from #5394).

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

coderabbitai Bot commented Oct 13, 2026 •

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 31 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used all 4 included reviews currently available.

Learn how review limits work.

Review configuration:

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 2a3a0b8c-22fc-46ec-b8d2-9cd2cef7784b
📥 Commits

Reviewing files that changed from the base of the PR and between 1998d34 and bc387ed.

📒 Files selected for processing (7)
  • quest/m0/audio-quality-budgets.md
  • quest/m1/README.md
  • quest/m1/js-fetch.md
  • quest/m1/js-forget-bench.md
  • quest/m1/js-track-status.md
  • quest/m2/README.md
  • quest/m2/ietf-driver-double-poll.md
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 13, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-13T17:26:40.483109Z bc387ed New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1fa789abff

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread quest/m2/ietf-driver-double-poll.md Outdated
Comment on lines +12 to +14
#5393 added `kio::Waiter::batch`, which holds a `Tasks` set's wake of its own
owner during that owner's poll. IETF sessions still poll twice: the driver is
a boxed future, so its children's sets are woken inside nested polls that the

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Make the batching change a prerequisite

The reviewed parent contains no kio::Waiter::batch, and rs/moq-net/tests/idle_session.rs:71-75 still describes and permits two driver polls per refresh for the lite versions. Consequently, the premise that #5393 already fixed lite and left only a nested IETF batching gap is not true in this tree, so this quest cannot apply its proposed remedy independently. Land/rebase #5393 first or record it as a required dependency and remeasure before prescribing the IETF-only fix.

AGENTS.md reference: AGENTS.md:L16-L18

Useful? React with 👍 / 👎.

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.

Agreed: #5393 is still open, so the premise was stated as if it had landed. Fixed in bc387ed: the quest now starts after #5393 merges and remeasures on top of it, and the Goal and the m2 README entry say "as #5393 makes moq-lite's". Required only lists quests, and #5393 is a PR, so the dependency lives in the Plan.

(Written by Claude Opus 5.5)

Comment thread quest/m1/js-track-status.md Outdated
Comment on lines +29 to +31
Verify with a native IETF subscriber against a browser publisher on every
supported draft: a fetch-only request gets TRACK_STATUS_OK with no SUBSCRIBE
fallback, a cancelled request releases origin demand, and a request outside

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Exclude draft 17 from no-fallback verification

every supported draft includes draft 17, but TrackStatusOk::describes_track deliberately returns false there because its REQUEST_OK cannot carry the track's timescale; ietf/subscriber.rs:1994-1999 therefore learns the track through SUBSCRIBE instead. Requiring TRACK_STATUS_OK with no fallback on that draft is unachievable without regressing timed draft-17 tracks. Specify drafts 14-16 and 18-22 for the no-fallback case and retain the draft-17 fallback.

AGENTS.md reference: AGENTS.md:L78-L80

Useful? React with 👍 / 👎.

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.

Agreed, confirmed against TrackStatusOk::describes_track and ietf/subscriber.rs. Fixed in bc387ed: the publisher answers on every draft (the Rust publisher has no version gate), but the no-fallback check covers drafts 14-16 and 18-22, and draft 17 keeps subscribing. The Goal's "drafts 18 and later" was also wrong, since the Rust reader sends TRACK_STATUS on 14-16 too, so that's fixed as well.

(Written by Claude Opus 5.5)

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

Copy link
Copy Markdown
Collaborator Author

Merge summary:

(Written by Claude Opus 5.5)

@kixelated
kixelated added this pull request to the merge queue Oct 13, 2026
Merged via the queue into main with commit 0ddad96 Oct 13, 2026
3 checks passed
@kixelated
kixelated deleted the plan/quest-complete-follow-ups branch October 13, 2026 17:57
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