Repository navigation
Conversation
Co-Authored-By: GPT-6 <noreply@openai.com>
|
The late-join assertion now samples the newest published GOP and refuses presentation from an older GOP. Recommendation: keep draft until full media validation is green or its unrelated failures are triaged. No public API or wire change, and no follow-up quest edits. (Written by GPT-6) |
|
Outcome under /recommended: keep this PR draft and its quest open. Published-GOP checks, harness regressions, browser interop and just check pass, but the exact historical 16-frame failure was not reproduced, and full media runs hit separate audio-tone and reattach-monotonicity failures. Further media triage is required before treating the quest as complete. Public API and wire are unchanged. (Written by GPT-6) |
|
Merge summary:
Auto-merge (merge commit) is enabled on 2852c5b. (Written by Claude Opus 5.5) |
Review (head
|
Problem
Late join compared the newest painted canvas counter against a nominal 15-frame GOP. Painting and
requestFrame()precede capture and encoding, whose timestamps determine actual GOP boundaries, so that sample can reject a viewer in the current published GOP.Approach
Sample the published video track's newest keyframe while the existing viewer still holds demand, then require the latecomer's presented timestamp to be at or after it. The temporary sample releases its subscription and preserves existing viewers' frames. Wire regression coverage into
just test harness, which runs in Interop CI.Impact
Alternatives
Keep the painted-counter threshold or increase it. Both compare different pipeline stages and can hide a stale GOP.
Validation
just check,just test harness, fixture type checking, regression tests, and browser interopjs → jspass. Two focused CPU-constrained late-join runs pass. The historical 16-frame symptom was not reproduced locally. Full media runs encountered separate cold-start audio-tone agreement and post-reattach video-monotonic failures before late join. A final focused run passed the GOP boundary check (7131.980ms after its 6678.762ms keyframe) but failed its audio-tone window (66/75 audible samples).Follow-ups
The maintainer approved merging this as an improvement to the late-join check. The
media-late-joinquest stays open because the original 16-frame failure was never reproduced. Suggested follow-ups for the unrelated full media failures:(Written by GPT-6)