I've been tinkering with an LND node for a few months now and the #1 issue is getting out of sync with the chain data. Even when it has the blocks, it sometimes hasn't processed them.
This same problems happened to me with the lightning node in Zeus.
And it's a troublesome problem to detect too because uptime monitors are going to report the service is up. Systemd is going to say the service is running. The blockheight might even be up to date!
It'd take some custom code to dig deep and detect this as soon as it happens. Sure, something could be written, but I haven't come across it yet.
As I understand it, a watchtower is looking for channel closures with old channel state. This is not at all the same as detecting that your node is falling behind and payments are going to fail (sometimes silently) if someone tries to move any money.
The only explanation I can muster for this being the state of lightning after 5+ years is that laws must have had a severe chilling effect and kept developers away. It's hard to understand why the quality would be so low unless there just aren't enough devs to go around. I know the people who are working on these projects are incredibly passionate, so I don't believe for a moment that it's a lack of caring on their part.