в чистом виде-то это очень простая схема:
1. делаем пеймент-каналы через контракты, которые умеют запоминать время, seq number, проверять относительный таймаут и проверять что новый seq number больше старого. И чтоб подписывать можно было не целую транзакцию, а лишь инстанс контракта, привязанный к его собственному состоянию, но отвязанный от состояния на блокчейне. (чтоб можно было любой версией перекрыть любую предыдущую версию)
2. чтоб делать мультихоп, нужно между каждым апдейтом каналов добавить conditional шаг: когда баланс обновляется или рефандится из-за HTLC (секрет выдан - баланс i+1, секрет не выдан до таймаута - баланс i). Плюс, все те же условия про пеймент канал.
3. как только секрет переданы по цепочке, стороны добровольно подписывают обычный (без htlc) апдейт балансов в своих каналах.
Самое главное: за все время не нужно хранить список ключей ревокации, каких-то предподписанных транзакций, переживать что фи нужно будет бампать через RBF или как-то. Достаточно хранить последнее подписанное сообщение, которое втыкается в контракт в любом его состоянии чтоб сделать закрытие. И транзакция создается и подписывается, и фи выбираются в момент, когда ты хочешь закрыть канал, а не за дни/недели до того, как.