Skip to content

fix(recording): exclude pauses that arrive with no media - #2618

Open
yashranaway wants to merge 2 commits into
CapSoftware:mainfrom
yashranaway:fix/recording-pipeline
Open

yashranaway wants to merge 2 commits into
CapSoftware:mainfrom
yashranaway:fix/recording-pipeline

Conversation

@yashranaway

@yashranaway yashranaway commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

in instant mode the video has its own pipeline, and that pipeline only noticed a pause when a frame showed up while paused. if the screen didn't change during the pause, no frame came in, so the paused time stayed in the video timestamps and the video ended up ahead of the audio by however long you paused.

pause and resume now record the transition at the moment they're called, using the pause tracker the pipeline already shares with its encoders, so a pause counts even when no media arrives during it. the new test pauses a video-only pipeline for 300ms with no frames and checks the next frame's timestamp. it fails on main.

🤖 Generated with Claude Code

RetriggerView in GreptileConfidence Score: 5/5

The PR appears safe to merge, with a non-blocking concern about the new test.

Findings

  1. P2 Test can miss the race ▶
Fix with agent prompt
### Issue 1
crates/recording/src/output_pipeline/core.rs:4893
The new test sleeps for 50 ms but does not confirm that the worker has reached `check()`. If the worker starts after `flag.store(false, ...)`, the old broken implementation also passes both assertions. That lets the test pass without exercising the race it should catch. Use explicit coordination at the lock boundary instead of relying on the sleep.

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Summary

The PR records pauses even when no media arrives, preventing paused time from entering video timestamps.

  • Pauses without video frames no longer stretch the video timeline.

Reviews (2) · Last reviewed commit: "fix(recording): read the pause flag unde..." · Reviewed by Greptile

@vercel

vercel Bot commented Oct 15, 2026

Copy link
Copy Markdown
Contributor

@yashranaway is attempting to deploy a commit to the Cap Software Inc Team on Vercel.

A member of the Team first needs to authorize it.

@yashranaway

Copy link
Copy Markdown
Contributor Author

@greptileai review

Comment thread crates/recording/src/output_pipeline/core.rs
@yashranaway

Copy link
Copy Markdown
Contributor Author

@greptileai review

Comment thread crates/recording/src/output_pipeline/core.rs

This branch has not been deployed

No deployments
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