Bug 135663 (ReplaySavepoints) - Web Replay: support replaying to arbitrary debugger positions
Summary: Web Replay: support replaying to arbitrary debugger positions
Status: RESOLVED LATER
Alias: ReplaySavepoints
Product: WebKit
Classification: Unclassified
Component: Web Inspector (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on: 135690 135830
Blocks: WebReplay
  Show dependency treegraph
 
Reported: 2014-08-06 12:05 PDT by Brian Burg
Modified: 2017-07-10 14:01 PDT (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Brian Burg 2014-08-06 12:05:00 PDT
We should be able to revert back to any position that the debugger is in.
In past prototypes, we have called this concept "savepoints", "bookmarks", or "checkpoints".

Savepoints have coordinates of <event loop input, breakpoint, debugger walk>.


The algorithm is:
0. During normal replay, keep records of how many times a breakpoint is hit per event loop input.
1. replay to the preceding event loop input and pause playback
2. enable the debugger and set the preceding breakpoint which was hit
3. unpause playback, then that breakpoint
4. replay the series of debugger commands that led to the terminal state.


This feature may be split into smaller bugs. It requires no new backend support.
Comment 1 Radar WebKit Bug Importer 2014-08-06 12:05:10 PDT
<rdar://problem/17934582>
Comment 2 Brian Burg 2014-08-11 22:45:57 PDT
This could possibly be messed up by promises not working when the inspected page is paused.
Comment 3 Brian Burg 2017-07-10 14:01:25 PDT
Closing web replay-related bugs until we resume working on the feature again.