Currently updateCallbackDone is a reaction to the provided update callback (in startViewTransition(update)),
and activating the view transition is a reaction to updateCallbackDone.
This makes it so that author-provided updateCallbackDone reactions are usually called before capturing the new state, but sometimes after. This can create a confusion and subtle bugs.
I found that updateCallbackDone is most useful in its usual behavior, when all the author reactions are flushed and only then the new state is captured - this allows using this callback as a way to add new state changes on top of whatever is in the update callback
Proposing to slightly change the wording so that it's clear that there's a microtask checkpoint between resolving updateCallbackDone and activating the view transition (capturing the new state).
Currently
updateCallbackDoneis a reaction to the providedupdatecallback (instartViewTransition(update)),and activating the view transition is a reaction to
updateCallbackDone.This makes it so that author-provided
updateCallbackDonereactions are usually called before capturing the new state, but sometimes after. This can create a confusion and subtle bugs.I found that
updateCallbackDoneis most useful in its usual behavior, when all the author reactions are flushed and only then the new state is captured - this allows using this callback as a way to add new state changes on top of whatever is in the update callbackProposing to slightly change the wording so that it's clear that there's a microtask checkpoint between resolving
updateCallbackDoneand activating the view transition (capturing the new state).