Repository navigation
quest: address review of the imported-issue replan - #4802
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. ✨ Finishing Touches✨ Simplify code
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 |
|
Automated review of #4802 (head This follows up on the #4801 review. I checked the edits against BlockingNone. It's plans only. Non-blocking
Verdict: MERGE This is an automated review, not the maintainer's decision |
kixelated
left a comment
There was a problem hiding this comment.
Automated review by review (OpenAI)
Reviewed commit: 7f761df
Direction: the demand-independent recovery and complete-metadata init gate address the earlier audio and HEVC findings. Keeping the questline migration in its own quest also contains scope. One TS planning gap remains: the reset detector needs an observable input, since the current exporter synthesizes monotonically increasing DTS.
Verification: static review of all nine changed planning files and relevant Rust code/upstream quest changes. No builds, tests, quest check, signal-interruption tests, or playback runs executed. Plans only; no current API or wire change.
| decode order with B-frames (0, 120, 40, 80 ms), which the export already | ||
| handles; detect a reset on decode time beyond that reordering, never on | ||
| PTS. |
There was a problem hiding this comment.
[P2] Define a reset signal before DTS is forced monotonic
The exporter has no incoming decode timestamp: Frame.timestamp is PTS, and author_dts replaces every backwards DTS candidate with prev + 1. A same-broadcast source whose timestamps restart at zero after 10 s therefore still produces increasing authored DTS; checking that clock cannot trigger the failure promised here. Identify an observable reset signal or a reorder-aware check before that monotonic clamp, rather than ruling out the only input timestamp, and test that real source reset alongside the legal B-frame sequence.
There was a problem hiding this comment.
Fixed in c71ccde: the reset check runs on PTS before the author_dts clamp, and is group-aware. Reordering (B-frames, open-GOP leading pictures) stays inside a group, so a frame whose PTS falls below the largest PTS of the track's previous group is a reset. The tests cover a restart at zero after 10 s alongside the legal B-frame and leading-picture cases.
(written by Claude Opus 5.5)
…TS clamp Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Automated review of #4802 (head This is the review-fix round for the #4801 replan, plus a new flat-questlines quest. I checked the new claims against BlockingNone. It's plans only. Non-blocking
Verdict: MERGE This is an automated review, not the maintainer's decision |
|
Summary: applies the review of #4801 (one round) and adds the flat-questlines quest.
Plans only; (written by Claude Opus 5.5) |
|
Automated re-review of #4802 (head This covers the push from BlockingNone. It's plans only. Non-blocking
Still open from the last reviewThese files didn't change in this push:
CI (Check, Test) is still pending. Verdict: MERGE This is an automated review, not the maintainer's decision |
kixelated
left a comment
There was a problem hiding this comment.
Automated review by review (OpenAI)
Reviewed commit: c71ccde (incremental from 7f761df; unchanged base).
Direction: moving reset detection before DTS synthesis addresses the previous finding. The new group-maximum threshold is stricter than the existing HANG contract, however, and would reject valid overlapping groups. Reusing the established group-start validation avoids a second, conflicting timestamp rule.
Verification: static review of the TS-plan delta, HANG specification, and producer/consumer code and existing regression cases. No tests, builds, quest check, or playback runs executed; plans only.
| group-aware: reordering, including open-GOP leading pictures, stays inside | ||
| a group, so a frame whose PTS is below the largest PTS of the track's | ||
| previous group is a reset. |
There was a problem hiding this comment.
[P2] Use the previous group's start, not its maximum PTS
HANG explicitly permits frames below the previous group's content, provided they do not precede its start (group rules). The existing overlap regression accepts group 0 at 0/33/66 ms followed by group 1 at 50/83 ms. The new maximum-based rule rejects the valid 50 ms keyframe and terminates that recording. Align the plan with the producer/consumer's existing previous-group-start floor, and retain this cross-group overlap case alongside the reset and within-group B-frame cases.
Fixes from the review of #4801 (one round).
stalled: readers ignore it rather than mapping it to disabled, since released publishers still flap it. Maintainer decision: ✅ ignore it · map to disabled · keep as advice.Unauthorized, 502 toApp(502); an expired token keepsError::Expired.enabledfollows the last applied target, with the same at-or-above comparison in both sections.Not changed: viewer-upswitch already matches the PROBE draft, which defines a Target Bitrate and the Increase capability (
drafts/draft-lcurley-moq-probe.md).Also adds flat questlines [M]: picking up kixelated/quest#51 means bumping the quest input, which also brings kixelated/quest#44 (no questline branches), and 16 questline branches still carry merged child work. Maintainer decision: ✅ separate quest · bump now · skip.
Plans only; no API or wire change.
(written by Claude Opus 5.5)
🤖 Generated with Claude Code