Skip to content

chore(quest): move MoQ on rind to m1 and drop relay ACME for now - #7749

Merged
moq-bot[bot] merged 6 commits into
mainfrom
quest-plan/rind-m1-drop-acme
Nov 4, 2026
Merged

moq-bot[bot] merged 6 commits into
mainfrom
quest-plan/rind-m1-drop-acme

Conversation

@kixelated

@kixelated kixelated commented Nov 3, 2026 •

Copy link
Copy Markdown
Collaborator

Problem

MoQ's switch to rind sat in m2. Its relay ACME area waited on instant-acme 0.9, which still isn't released (crates.io has 0.8.5). ACME is a recent feature nobody uses yet.

Approach

Decided by the maintainer on 2026-11-03:

  • Moves quest/m2/rind/ to quest/m1/rind/ and lists it in m1. Links are rewritten.
  • Replaces the relay ACME quest with quest/m1/rind/acme-remove.md [S]: remove moq-relay's acme feature and rustls-acme until ACME returns.
  • Moves acme.md to quest/m3/relay-acme.md (ACME returns on instant-acme and rind) and instant-acme.md to quest/m3/rind-instant-acme.md, both listed in m3.

moq-rtc on rind (m1) required the m2 quest "Vendor and trim the stack" (raised by CodeRabbit and Pullfrog). The maintainer picked one of three ways to resolve that (2026-11-03):

  • ✅ Move quest/m2/webrtc/rename.md [M] and vendor.md [L] to the m1 top level, still listed as children of the m2 WebRTC epic, like mesh-key-codec. They are now webrtc-rename and webrtc-vendor, listed in m1's Required before the rind epic. Each records the decision in its Plan.
  • Not chosen: move rtc.md back to m2 and narrow the m1 rind epic.
  • Not chosen: keep the m1 → m2 edge.

Review follow-ups:

  • quest/m3/relay-acme.md no longer assumes ACME survives the gap. It drops the promise of rustls-acme cache compatibility and says moq-relay regains the acme feature and an ACME config section.
  • quest/m1/rind/transport.md no longer says relay ACME owns rustls-acme. The dependency leaves with ACME's removal.
  • origin/main is merged in. refactor!: merge moq-sign and moq-e2ee into moq-crypto; track::Info::rescale #7702's moq-e2ee → moq-crypto rename doesn't touch these quests. The open planning PRs moq-dev/moq#7748 and moq-dev/moq#7747 still add children under quest/m2/rind/ (crypto.md, crypto-sign.md). Whichever of these lands second must move those children to quest/m1/rind/.

Review

mechanical fix by codex / Codex: Merged base, preserved the DTLS timeout requirement alongside the m1 move, and updated renamed quest links; validated with git merge --no-edit base, quest check (560 documents ok), and git diff --check base...HEAD; documentation only, no executable packages to build or test. (head 371658d)

  • Harness: Codex (quest review), gpt-6.1-sol, medium effort.
  • Reviewed head: 79b1df5 against origin/main.
  • Round 2 reported no findings. Round 1, on 91e69c7, also reported none.
  • Online review threads, all resolved:
    • Relay-acme Public API line: fixed.
    • Cache compatibility and the transport plan's rustls-acme note: fixed.
    • m1 → m2 vendoring dependency: fixed by the maintainer's ✅ pick above.

Impact

  • None. Quest files only.

(Written by Claude Opus 5.5)

🤖 Generated with Claude Code

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: 1f48d46 against base 759e9e1.

No actionable finding in the quest reorganization. The replacement removal quest makes the breaking feature/config change explicit, and the restored-ACME quest retains its adapter prerequisite. The corresponding rind quest move has now landed.

Static GitHub-only review; I did not run quest validation or build the relay.

@coderabbitai

coderabbitai Bot commented Nov 3, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

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 9 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
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 7abaface-8fc6-4556-957b-d5e090bec5ca
Commits

Reviewing files that changed from the base of the PR and between 1f48d46 and 371658d.

Files selected for processing: 18
  • quest/m1/README.md
  • quest/m1/rind/README.md
  • quest/m1/rind/acme-remove.md
  • quest/m1/rind/rtc.md
  • quest/m1/rind/transport.md
  • quest/m1/webrtc-rename.md
  • quest/m1/webrtc-vendor.md
  • quest/m2/README.md
  • quest/m2/p2p/native-quic.md
  • quest/m2/rtc-pacing.md
  • quest/m2/webrtc/README.md
  • quest/m2/webrtc/clock.md
  • quest/m2/webrtc/dtls-after-ice.md
  • quest/m2/webrtc/dtls-timeout.md
  • quest/m2/webrtc/sdp-bandwidth.md
  • quest/m3/README.md
  • quest/m3/relay-acme.md
  • quest/m3/rind-instant-acme.md

Walkthrough

The quest documents move rind migration and related transport and RTC work into m1. They describe removing relay ACME during the migration and add m3 quests for publishing the rind adapter and restoring relay ACME. Related quest links now point to the updated m1 and m3 locations.

Merge Risk: Low · previous review 1f48d

The quest reorganization leaves a milestone dependency conflict and an inaccurate ACME restoration API description. These are bounded planning issues, not immediate production failures; clarify them before implementing the quests.

Pre-merge checks: Passed 4
Check name Status Explanation
Title check Passed The title names the main change: MoQ on rind moves to m1, and relay ACME is dropped for now. The raw summary confirms the directory move, the new acme-remove.md quest, and the m3 relocations. The titl…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Description check Passed The description is specific and on-topic. It explains the problem (MoQ's switch to rind was in m2, and the relay ACME area waited on instant-acme 0.9, which is not yet released), and it lists the appr…
Full details: Title check

Explanation

The title names the main change: MoQ on rind moves to m1, and relay ACME is dropped for now. The raw summary confirms the directory move, the new acme-remove.md quest, and the m3 relocations. The title uses the conventional chore(quest) prefix and stays under one line, so it is clear and specific.

Full details: Description check

Explanation

The description is specific and on-topic. It explains the problem (MoQ's switch to rind was in m2, and the relay ACME area waited on instant-acme 0.9, which is not yet released), and it lists the approach. The approach covers moving quest/m2/rind/ to quest/m1/rind/, replacing the relay ACME quest with acme-remove.md, and moving the ACME quests to m3. It also covers the vendoring dependency fix, review follow-ups, and impact (quest files only). This matches the changeset summaries, which describe the same moves, link rewrites, and removals.

Finishing Touches
Simplify code
  • Commit to this branch
  • Create a new PR
  • 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
Recent review info
Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: c1d0bf92-8a92-48ce-a11c-d796fc2929be
Commits

Reviewing files that changed from the base of the PR and between 759e9e1 and 1f48d46.

Files selected for processing: 11
  • quest/m1/README.md
  • quest/m1/rind/README.md
  • quest/m1/rind/acme-remove.md
  • quest/m1/rind/rtc.md
  • quest/m1/rind/transport.md
  • quest/m2/README.md
  • quest/m2/webrtc/README.md
  • quest/m2/webrtc/vendor.md
  • quest/m3/README.md
  • quest/m3/relay-acme.md
  • quest/m3/rind-instant-acme.md

Included review availability: This review used your included allowance. Your plan provides up to 4 included reviews per hour; 0 remain after this review.

@coderabbitai coderabbitai 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.

  • Fix comments: Fix CodeRabbit comments on this PR

Comment thread quest/m1/rind/README.md Resolved
Comment thread quest/m3/relay-acme.md Resolved

@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.

ℹ️ Minor suggestions only.

Reviewed changes

  • Rind epic moves to m1 — quest/m2/rind/ becomes quest/m1/rind/, its index entry moves from the m2 README to the m1 README, and every in-repo link is rewritten.
  • New ACME removal quest — quest/m1/rind/acme-remove.md drops moq-relay's acme feature and rustls-acme so the rind epic no longer waits on instant-acme 0.9.
  • ACME return quests move to m3 — acme.md becomes quest/m3/relay-acme.md, instant-acme.md becomes quest/m3/rind-instant-acme.md, both listed in m3, with the rind adapter link repointed to its now-real quest/m3/instant-acme-publish.md.

ℹ️ An m1 quest still requires m2 work

quest/m1/rind/rtc.md requires quest/m2/webrtc/vendor.md. Now that the rind epic is in m1, a quest that must land before the next release cut depends on later-milestone work, which contradicts quest/README.md's milestone split. The PR body notes this, but it needs a decision rather than being carried: move vendor.md into m1 with the epic, or leave rtc.md in m2 so m1's rind work is landable before the cut.

Technical details
# Resolve the m1-requires-m2 dependency

## Affected sites
- `quest/m1/rind/rtc.md:33` — `Required` links `quest/m2/webrtc/vendor.md`
- `quest/m1/rind/README.md:69` — lists `moq-rtc on rind` among m1's required children
- `quest/m2/webrtc/vendor.md:1` — remains in the m2 webrtc epic

## Required outcome
- The rind epic in m1 either has no m2 prerequisite, or the prerequisite moves to m1 as well.
- If `rtc.md` stays in m1, the milestone definitions in `quest/README.md` should still make its ordering coherent.

## Suggested approach (optional)
- Moving `vendor.md` to m1 is the smaller change and matches the stated intent that rind is m1 work; otherwise move `rtc.md` back to m2 and keep only `transport.md` and `acme-remove.md` as m1 children.

## Open questions for the human (optional)
- Is the rind epic meant to be fully landable before the next cut, or is m1 only the priority bucket here?

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

Comment thread quest/m3/relay-acme.md Resolved
kixelated and others added 2 commits November 3, 2026 16:52
Relay ACME's return quest no longer promises cache compatibility or an
unchanged config, since m1 removes the feature, its config, and its cache.
The transport plan no longer says relay ACME owns rustls-acme.

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

@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 new issues found.

Reviewed changes

  • Reworded quest/m1/rind/transport.md so rustls-acme leaves with ACME removal rather than staying relay ACME's dependency.
  • Reworked quest/m3/relay-acme.md to drop the cache and config compatibility promises and to state that the returning feature re-adds the acme flag and an ACME config section.

The remaining m1→m2 vendoring dependency is the open decision already recorded in the PR body, not a new finding.

Pullfrog  | View workflow run | Using deepseek-v4.1-flash-1017 (free via Pullfrog for OSS) | 𝕏

@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 head: 91e69c7, following 1f48d46.

The follow-up removes the stale assumption that ACME and its cache survive the interim removal, and the transport quest now assigns rustls-acme removal consistently. I found no additional actionable issue in that delta. The m1-to-m2 WebRTC dependency remains a maintainer decision explicitly called out in the PR.

Verification: static GitHub inspection only; I did not run quest validation or build the relay.

(Written by review (OpenAI))

kixelated and others added 2 commits November 3, 2026 17:22
m1's moq-rtc on rind requires the vendored stack, which requires the rename,
so both move to the m1 top level (maintainer, 2026-11-03). They stay children
of the m2 WebRTC epic.

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 head: 79b1df5, following 91e69c7.

The earlier m1-to-m2 dependency concern is addressed: the maintainer chose to move the WebRTC rename and vendoring prerequisites to m1, preserving their ordering and updating the in-repository links. The unrelated changes in the comparison come from the main-branch merge. No new actionable findings in this update.

Verification: static GitHub-only inspection; I did not run quest validation or build the relay.

(Written by review, OpenAI)

@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 new issues found.

Reviewed changes

  • Moved the WebRTC rename and vendoring quests from quest/m2/webrtc/ to the m1 top level as quest/m1/webrtc-rename.md and quest/m1/webrtc-vendor.md, resolving the prior m1→m2 dependency.
  • Repointed every reference to those quests across the m1 and m2 trees, including quest/m1/rind/rtc.md, quest/m2/p2p/native-quic.md, quest/m2/rtc-pacing.md, and the m2 webrtc children.
  • Added both quests to quest/m1/README.md before the rind epic and recorded the milestone shift in each quest's Plan while keeping them children of the m2 WebRTC epic.

All /quest/*.md links in the changed files resolve, and no stale m2/webrtc/rename.md or m2/webrtc/vendor.md references remain.

Pullfrog  | View workflow run | Using deepseek-v4.1-flash-1017 (free via Pullfrog for OSS) | 𝕏

@kixelated
kixelated added this pull request to the merge queue Nov 4, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to a conflict with the base branch Nov 4, 2026
@moq-bot

moq-bot Bot commented Nov 4, 2026

Copy link
Copy Markdown
Contributor

quest land watch: the merge queue removed this pull request at 79b1df5 because it conflicts with main (merge_conflict).

The land fixer works on it in the background, and the watcher re-enqueues it at the back of the queue once it is fixed or judged flaky, or hands it back here with what it needs.

(written by quest land watch)

@moq-bot
moq-bot Bot added this pull request to the merge queue Nov 4, 2026
@moq-bot

moq-bot Bot commented Nov 4, 2026

Copy link
Copy Markdown
Contributor

quest land watch: re-enqueued this pull request at 371658d, at the back of the merge queue, with the land fixer's fix (codex / Codex): Merged base, preserved the DTLS timeout requirement alongside the m1 move, and updated renamed quest links; validated with git merge --no-edit base, quest check (560 documents ok), and git diff --check base...HEAD; documentation only, no executable packages to build or test..

(written by quest land watch)

@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 new issues found.

Reviewed changes

  • Merged origin/main into the branch and adapted main's new quest/m2/webrtc/dtls-timeout.md so its rename and vendoring links point at quest/m1/webrtc-rename.md and quest/m1/webrtc-vendor.md.
  • Kept quest/m2/webrtc/README.md listing both m1-level quests alongside the new DTLS timeout quest, and left the dtls-after-ice / sdp-bandwidth children pointing at the m1 vendoring quest.
  • Confirmed no stale m2/webrtc/rename.md, m2/webrtc/vendor.md, or m2/rind/ references remain in the quest tree after the merge.

Pullfrog  | View workflow run | Using deepseek-v4.1-flash-1017 (free via Pullfrog for OSS) | 𝕏

Merged via the queue into main with commit fa80a02 Nov 4, 2026
9 of 10 checks passed
@moq-bot
moq-bot Bot deleted the quest-plan/rind-m1-drop-acme branch November 4, 2026 03:34
kixelated added a commit that referenced this pull request Nov 4, 2026
Merge the queue fixer's 3ec3dbd (rind moved to m1 by #7749) and main. The
Nightly epic lists both this PR's children and #7747's. Fold this PR's
duplicate rind/crypto.md into #7747's rind/crypto-sign.md, and point
miri-frame.md at m0/nightly/miri.md, where #7747 moved the Miri budget quest.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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