it actually shouldn't because the ZK watcher already has behavior in it to prevent sending a list of empty backends to synapse.

This does raise the point that figuring out when or how to fall back to defaults is tricky and needs to be figured out.  I'm not sure what the right approach is here.