Not sure if it fits all your requirements, but I recall that there was a project on verifying xmonad in Coq (https://dl.acm.org/doi/abs/10.1145/2364506.2364523) — while that project involved extracting the verified Coq/Gallina code to Haskell, I guess you could also try and extract it to OCaml, although ymmv.
To my knowledge, this doesn’t really exist at the moment (there was GwML at some point, but I don’t think it is maintained anymore; I haven’t tried it either).
I also think it would be really cool to have an OCaml-based WM / WM toolkit. In fact, trying to build something like this has been a side-project of mine for many years, but I’ve mostly been toying with various designs and don’t have anything to show for it currently. I’ve picked it up again recently (as a wayland compositor based on wlroots/dwl), but I wouldn’t hold my breath…