It would be nice to suspend animations while a playback is paused, using the same code path as suspending when changing tabs or for a modal dialog.
Some issues with this: the code to suspend (Document::suspend+resumeScheduledTasks / PageGroupLoadDeferrer) will trigger timers which are normally deterministic such as ScriptRunner::m_timer and animation timers, which would cause a divergence by over-scheduling the timer. If playback is paused and we call suspendScheduledTasks, it calls ScriptRunner's m_timer.stop(). A subsequent resumeScheduledTasks will do m_timer.startOneShot(0, this). I *think* that this second startOneShot should be ignored, as it could run JS prematurely if some scripts were pending when playback pauses.
Closing web replay-related bugs until we resume working on the feature again.