actually, just articulating that first point about failure resistance
already right now, if LN protocol had a notion of forking it could be literally like lightning and if it forks into a dead end it can step back one, two, three etc hops and try alternatives
the messages would be a lot bigger but they would have resistance
i started working on this idea with Indra last year, how to do forks, the https://github.com/indra-labs/indra repo has code for "forking" messages, that encode multiple routes for a packet so it can even duplicate across and iirc i even made a join message