This feature relates to several new React APIs: concurrent mode, suspense, and server rendering / hydration
When hydrating server-rendered content, React starts working on the outermost Suspense boundary and works its way in. During hydration, the server rendered HTML isn't interactive. React records events to replay them once content becomes interactive- (but that doesn't actually happen until React finishes work on the nearest boundary and commits it). React may also reprioritize the order in which boundaries are processed (so that boundaries with pending events get processed sooner).
This general process can be hard to reason about and debug, because much of it is not observable visually (beyond some interactions potentially feeling more laggy than expected).
DevTools already provides some visual overlays (e.g. which elements were rendered by the currently selected Component, "highlight updates"). Perhaps DevTools could help here too by visualizing which boundaries in the tree have been hydrated.
This feature would be opt-in via a new DevTools setting.
1 This suggests a new React-to-DevTools hook to inform DevTools when hydration starts.
2 This overlay would nee to be designed. Perhaps some combination of semi-transparent with stripes or bars so that it is high contrast enough to be seen.
3 Because the data required to draw these overlays is essentially just a timestamp and a set of rects, some form of replay might be a nice addition.
It could be helpful to highlight a couple of special cases by temporarily showing a different style overlay:
I don't know if the above cases can be reliably detected by DevTools at present. They may require additional information (or an additional React-to-DevTools hook).
The following case does not need to be highlighted because it is not a deopt:
:eyes: