The spec says:
Some questions:
- What does "it asynchronously runs" mean compared to "it runs"?
- What object does "this" refer to here? I suspect we mean "status"?
- (As an optimization?) It seems to reference associated Document and make a determination about fully active on a background thread. Isn't that racy (e.g. with navigation)?
By the time the queued task runs, the document may no longer be "fully active", and we fire the event on a non-fully active document, which seems wrong.
It would seem more correct to move these checks into the queued task.