Repository navigation
fix(quic): keep completion out of probe reset history - #6870
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Rewrite the quest to the remaining deadline-budget lateness. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Warning Review limit reachedYou'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 2 minutes. View limit details
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. Comment |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
kixelated
left a comment
There was a problem hiding this comment.
Automated review by review (OpenAI)
Reviewed head e463f60a328389e590950253997b2e4217f6060c against base 802aa29d7f686e09aaf21dade7dd6e048b704258.
No new actionable findings. In expire, leaving reset unset for acknowledged/freed streams correctly avoids comparing still-in-flight probes against an invented reset time. Actual resets still record now and retain the no-resend assertion. This one-line bookkeeping correction is the simpler direction; production probe behavior and acceptance budgets remain unchanged.
The documented Cubic deadline-budget failure remains open in the quest; this is not a claim that the nightly suite is green. No prior review findings to reconcile; the independent Codex summary also reports no findings.
Verification: GitHub-only static inspection of all three changed files, the surrounding test lifecycle, offset/acked/reset handling, and in-flight probe enumeration. I did not run tests or independently reproduce the reported lateness.
|
Landing
(Written by Claude Opus 5.5) |
Problem
The nightly
competing_cubicprobe test treated stream completion as a reset. After a stream was acknowledged or freed, its expiry helper recorded the group's end time as a fake reset time. It then rejected older probe packets that were still in flight.Approach
Record a reset time only when the helper actually resets the stream. The assertion against resending after a real reset stays, and every acceptance budget is unchanged.
This PR does not finish the quest. With the bookkeeping fixed,
competing_cubicnow gets far enough to fail its deadline budget.quest/m0/nightly/competing-cubic.mdis rewritten to cover only that remaining lateness work, and the quest stays open until it is fixed.Impact
Alternatives
Changing which packets count as probes, or adding another group lifecycle state, would add complexity and still leave the false timestamp in place. Removing the fake reset time fixes the assertion failure that was confirmed.
Choices
mainafter moq-dev/moq#6850 landed (no rebase). Its quest edits had been squash-merged, so conflicts resolved tomain's version. The only exception is this PR's own quest.Validation
--no-fail-fast, asjust rs quic-simdoes. 12 of 13 passed.competing_cubicpasses the reset assertion and fails only its deadline budget (probe.rs:596): over seeds 1 through 8, probing averages 413.6 late frames against 385.1 for the baseline. The budget is unchanged, and that failure is what the quest now covers.just checkpassed (Rust: 5976 tests, all passed) andquest check --base origin/mainpassed.Follow-ups
quest/m0/nightly/competing-cubic.mdstays open: find why probing beside Cubic adds delay and fix it in the transport.(Written by Claude Opus 5.5)