Repository navigation
chore(quest): retire js-publish-discontinuity, delivered by #3982 - #4045
Conversation
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. |
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. Warning Review limit reachedNext included review available in 5 minutes. View limit detailsLimit details: You’ve used all 4 included reviews currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (3)
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (3)
💤 Files with no reviewable changes (2)
Included review availability: Your plan provides up to 4 included reviews per hour; 0 remain after this review. WalkthroughThe publisher-clock quest plan now specifies that the video encoder calls Merge Risk: ⚪ Minimal · up to The quest update is ready to merge after normal checks; no actionable risk is established. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ 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 |
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
08c370e to
8f0cbf3
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 8f0cbf3e87
ℹ️ 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".
| video encoder marks a break through `Container.Legacy.Producer.cut()` whenever | ||
| its encode loop stops (demand gap or capture swap). The audio encoder writes its |
There was a problem hiding this comment.
Keep source-switch discontinuities in scope
When <moq-publish> switches between its normal camera, screen, or file sources, the same Video.Capture created in element.ts survives and only Capture.out.frames is replaced (video/capture.ts:45-63). producer.cut() is attached to the outer #encode cleanup (video/encoder.ts:237-244), whereas replacing out.frames only reruns the nested reader effect at lines 281-335, so this common source swap does not emit a marker. During the switch gap, the previous group can therefore remain the live edge, so deleting the dedicated quest while stating that capture swaps are covered leaves this case untracked; retain it explicitly in publisher-clock or keep the quest.
Useful? React with 👍 / 👎.
Problem
quest/m1/js-publish-discontinuity.mdasked for a js/hang container producer that publishes a marker group, wired into js/publish encoder restarts. #3982 already shipped that:Container.Legacy.Producer.cut(end?)closes the group and writes the one-empty-frame marker group. The video encoder calls it whenever its encode loop stops (demand gap or capture swap), and the audio encoder writes its own marker on a demand gap (#4041 hardened that). The quest's plan, which describes a missingdiscontinuity(), is stale, and it still blockedpublisher-clock.Approach
quest/m1/README.mdentry.publisher-clock'sRequired. That quest now records the settled path and the audio restart cases still unmarked, since it already owns source and encoder restarts.Impact
Alternatives
moq-mux. Not done: no JS publisher cuts a data track (captions write one cue per group), and a skipped sequence makes the JS consumer wait up to max age before moving past the hole.publisher-clockalready covers.Follow-ups
publisher-clockis now ready.moq-muxcut()/discontinuity()into one call ondevto match JS.🤖 Generated with Claude Code
(written by Claude Opus 5.5)