Caller id is simple and just works. And when it fails, it just says unknown number and you have to pick up the call to find out who it is or let it go to voice mail. Home automation is a rube-goldberg machine that is a lot of fun if you like building and maintaining rube goldberg machines -- but its not practical and it frequently fails in pretty spectacular ways.
I've had a Z-wave HA system going for around 8 years. It is like caller ID - if the controller fails, I revert to using the wall switches. Z-wave can be a bit finicky to set up initially but the only real failure modes I've had are dead switches, which I've had actually more of with my bath fan timers that are not part of the HA system. I've had zero problems with door locks. They're great not because I can "unlock it with my phone", but because it makes managing the entry codes easy (example: give a temporary code to a contractor), and because they can alert you when someone punches in a code.
I will say having lighting control is on the overrated side. I find that's mostly only valuable when switches aren't convenient to reach. The one I use most often is the back patio light, because I generally don't notice I've left it on until I'm upstairs and about ready to go to bed, and the dog has finally settled down, etc.
HA made my in-ground hot tub experience a whole lot better. There's a filter pump, a heater, and light, and a water filler valve. The controls for all of these things were in separate and very hard to reach places, and the old mechanical timer used to "conflict" with the heater when I wanted to heat it during its normal filter schedule. Now they're all lined up on one page on my smartphone. And now that I've connected my system to HomeKit via HomeBridge, I can even ask Siri to turn the light on hands free if I'm in the tub and it gets dark out.
I haven't seen a "spectacular" HA failure since the old X10 days, when noise in your power line might trigger every HA-connected light switch to turn on. :)