One of our mac mini CI server also failed to boot after update today. When it happens on Linux I usually try to troubleshoot the problem rather than resetting a whole machine. It does not seems to be feasible on macos with reasonable effort because of recently-introduced security features (and also my lack of understanding of macos boot process).
I'm not sure Erlang with a immutable infrastructure concept is good idea. Dynamic code reloading and upgrading without downtime is a key feature of Erlang, and immutable infrastructure do not play well with these features. If you make Erlang immutable, you should add another layer to ensure availability like HAProxy, which adds management burden. If you use dynamic code reloading, it is no longer 'immutable'.
It seems that multiple files are merged into single vedis.c file. It's good for embedding into application, sqlite does the same, but I think it's better to open original source code and a Makefile to generate embeddable source code, at least if they want to get contributions from community.