The zoo has a complex cyrus imap server (my blog) that just works* despite hosting four zoos email on it in separate namespaces.
I was never bothered about sieve until recently after having the server do sieve as it depends of who you believe that the port reference number keeps changing**. Apparently it’s port was in the 2000’s and shared with something else but 4190 is now the thing. It was sort of there but i was missing a few steps
Eventually after ten or so years i decide to fix it I had to do some brief chown’ing of files as well but it looks good. Hell even web clients can do it once you set a home for the files in your zoo.cyrus.conf file say.
* several distros, and versions later ** you can change the assignment in an etc file.