Skip to content

fix(relay): gate the per-worker accept loop on _quic - #3968

Merged
kixelated merged 1 commit into
mainfrom
claude/relay-dead-serve
Sep 23, 2026
Merged

kixelated merged 1 commit into
mainfrom
claude/relay-dead-serve

Conversation

@kixelated

Copy link
Copy Markdown
Collaborator

Problem

Since #3927, serve in rs/moq-relay/src/relay.rs is only called by the QUIC worker group (#[cfg(feature = "_quic")]), so a build without _quic flags it as dead code and -D warnings fails. Quest agents in #3966 hit it via just check.

Change

Gate serve on _quic and fix its stale comment (it has no external callers).

Public API / wire: none.

(written by Opus 5.5)

🤖 Generated with Claude Code

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

chatgpt-codex-connector Bot commented Sep 23, 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-09-23T17:49:14.900631Z 1fdc22a PR opened
ℹ️ 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.

@kixelated

Copy link
Copy Markdown
Collaborator Author

MERGE

Positive improvement: yes. After #3927, serve is only invoked from the QUIC worker path (member.serve(... serve(...)) under #[cfg(feature = "_quic")]). Leaving the free function unguarded makes non-_quic builds treat it as dead code and fail under -D warnings (as Quest agents hit in #3966 via just check). Gating the function matches how the rest of this file already splits QUIC vs non-QUIC paths.

Worth the complexity: yes. One #[cfg(feature = "_quic")] plus a comment that no longer claims external callers. No public API or wire change.

Different approach: not needed. Moving serve into an existing _quic module would be more churn for the same compile-time outcome. Keeping it next to serve_listening is fine.

Recommendation: merge as-is.

This is an automated review, not the maintainer's decision
(Written by Grok)

@coderabbitai

coderabbitai Bot commented Sep 23, 2026

Copy link
Copy Markdown
Contributor

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 1fd9cee7-3bcb-43df-88ae-5635485f9c5a

📥 Commits

Reviewing files that changed from the base of the PR and between 7ee2b02 and 1fdc22a.

📒 Files selected for processing (1)
  • rs/moq-relay/src/relay.rs

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


Walkthrough

The relay serve function is now compiled only when the _quic feature is enabled. Its documentation now states that each QUIC worker binds its own listener, while Relay::run binds the shared listener before readiness.

Merge Risk: ⚪ Minimal · up to 1fdc2

The change gates the per-worker accept loop on QUIC and clarifies listener ownership. The shared non-QUIC accept path remains available, so no merge-blocking regression is identified; the change is mergeable after normal checks.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the main change: gating the relay accept loop on the _quic feature.
Description check ✅ Passed The description explains the dead-code warning problem, the _quic gating change, the stale comment update, and the absence of public API or wire changes.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 1 files.
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.
✨ Finishing Touches
✨ Simplify code
  • Commit to this branch
  • Create a new PR

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.

@kixelated
kixelated merged commit e5647aa into main Sep 23, 2026
3 checks passed
@kixelated
kixelated deleted the claude/relay-dead-serve branch September 23, 2026 18:51
This was referenced Sep 23, 2026
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