Do I need to wait for some signal to fire before tossing a frame at the monitor?
I talked about how it works some time ago here. It was about QPainter, but it's similar with OpenGL or Vulkan. As for synchronization, depending on your OS, graphics card and driver this can be controlled or set up at many different points. There's bunch of knobs and switches in the OS, driver and in your app through Qt or directly in OpenGL that you can play with. In the simplest case you just draw to the back buffer and OS takes care of a synced flip of the back buffer at your monitor's rate.
With QOpenGLWindow this behavior is the default. See the documentation for setSwapInterval() and the paragraph about swapping buffers in QOpenGLWindow Detailed Description.
I just have to worry about queueing frames faster than the eye can detect and let the kernel module do the busy work.
Well no, that's not entirely true. For smoothest experience you should try to produce frames at the rate of your monitor. Not slower but also not faster. It's not immediately obvious but producing more frames than the display can actually display is not just wastful but, more importantly, produces jaggy result. I touched on this a bit with example here. That post is a bit dated and there are some pretty cool new techniques to get the smoothest results, but I think it gives a bit of a baseline on what to do or not do.