Uh oh!
There was an error while loading. Please reload this page.
fix(replay): handle fast forwarding for arbitrary position jumps in replayer - #248
Conversation
bc6db72 to
7393768CompareUh oh!
There was an error while loading. Please reload this page.
billyvg
commented
Sep 23, 2025
@srest2021 Is it possible to handle this all inside of rrweb rather than requiring changes in sentry ui? The reason I ask is that if this is a bug within rrweb, it'd be nice to upstream a fix. |
srest2021
commented
Sep 23, 2025
billyvg
left a comment
There was a problem hiding this comment.
I'm going to take a closer look tomorrow, but here are a few nits for now
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
6deca53 to
d0fa140CompareUh oh!
There was an error while loading. Please reload this page.
Update changelog for commit: fix(replay): handle fast forwarding for arbitrary position jumps in replayer (#248)
fixes REPLAY-667
fixes REPLAY-558
Previously, fast forwarding through a replay was buggy and inconsistent if you scrub or jump positions. This is because when users scrub or jump to arbitrary timestamps, the cached nextUserInteractionEvent and state become stale and prevent proper re-evaluation of fast forwarding.
We now extend the Replayer class by adding a private function reevaluateFastForward that will handle arbitrary position jumps. reevaluateFastForward finds the current event index using binary search, scans forward to find the next user interaction position, and calculates the gap of inactivity between them. If the gap is large enough, fast forwarding is triggered. We call this function if we jump/scrub to a new position, if the skipInactive config changes, and on starting playback.
Before:
Screen.Recording.2025-09-23.at.9.20.44.AM.mov
After:
Screen.Recording.2025-09-23.at.9.27.18.AM.mov