We need to accept repeat signature requests and revocations for older
states because the signer state update and the CLN state update are
not atomic, i.e., the signer commits first, therefore ratchets up,
before CLN stores its state, meaning we could potentially replay some
prior state due to a preemption and restart inbetween. Relaxing these
two should address the majority of our desync issue.
We need to accept repeat signature requests and revocations for older states because the signer state update and the CLN state update are not atomic, i.e., the signer commits first, therefore ratchets up, before CLN stores its state, meaning we could potentially replay some prior state due to a preemption and restart inbetween. Relaxing these two should address the majority of our desync issue.