It's less broken in Tumbleweed. Setting the pid file to /run/monit/monit.pid doesn't work there either but because the patch that puts the placeholder in src/monit.h for easier substitution by the perl snippet in the spec was dropped, it uses the original default of /run/monit.pid. Means, monit does work on Tumbleweed but pid file paths are inconsistent and the package should be fixed nevertheless. I'll send a submit request.