Webdriver mouse events follow this sequence: webdriver_server -> constellation -> compositor -> constellation -> script thread
Other webdriver events follow this sequence: webdriver_server -> constellation -> script thread
This difference is important because mouse events must first go through a hit test in the compositor to determine which pipeline and node to target, whereas other webdriver commands use the active browsing context. This means that we can end up running webdriver commands out of order relative to how they were submitted, which leads to test failures.
Blocks #34683