Fairly simple to explain and obvious in retrospect:
- Alice and Bob do some channel ops
- Alice then sends
update_signed
which is a MuSig2 partial sig - Bob smirks now that he’s the only one with the full signature, goes silent
- Alice goes to chain with prior state, waits however long the “update phase” has a timelock for the “settle transaction” to be valid
- Right before timelock expires, Bob publishes the final state
- wait for this timelock to expire… publish settle tx
- finally can settle HTLCs
that’s 2x the update phase timelock, not 1x. I know there’s some “sandwiching” you can do to compress it a bit(conversations between LN engineers I didn’t understand!), but it’s north of my once expected 1x.
This game also shows up in the “layered eltoo” design from [Lightning-dev] Layered commitments with eltoo which was supposed to get rid of the additional delta values altogether.
OP_CTV is probably the ideal here? I never validated it end to end or carefully looked though. I emulated it for a few more vbytes using APO.