I write code.
We also need to figure out something for resizing XDG toplevels.
One proposal is to have OpenXR connect to our own Wayland display and get a DRM lease from us.
We discussed this in more detail over IRC. Some notes.
Possible solution: set up separate framebuffers for the 2D surfaces. Render once to the depth buffer, then again to the color buffer, in separate passes, the latter pass with depth testing disabled. Then composite this buffer into the 3D scene with depth testing enabled.