dumb-init is better, but they don't use socketfd which means they might drop signals in certain cases (in the race between consecutive sigwaits). I will concede this is a minor point, and I still have to finish implementing all of the necessary signal semantics in initrs, but it is kinda important.
Also I'm learning Rust and it was a good opportunity to practice by implementing something I already knew how to easily do in C.