Yes this is how it should be implemented
Yes this is how it should be implemented
Notably it is possible in rare circumstances to send the tx and then lose access to the tx key before the relay receives it. In other words you can technically send the money but the zap doesn't get processed. I don't know if LN zaps solve this problem.