-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DynComms [4/n]: Implement Dynamic Commitments Negotiation #8756
base: master
Are you sure you want to change the base?
DynComms [4/n]: Implement Dynamic Commitments Negotiation #8756
Commits on Oct 14, 2024
-
htlcswitch: define state machine for quiescence
htlcswitch: add drive method to quiescer
Configuration menu - View commit details
-
Copy full SHA for f3230a4 - Browse repository at this point
Copy the full SHA f3230a4View commit details -
htlcswitch: implement stfu response
htlcswitch: use quiescer drive method in link stfu implementation This commit amends the implementation presented in the last one by taking advantage of the quiescer drive method. This allows us to centralize quiescence logic better rather than diffusing it throughout the link. h/t @carlaKC
Configuration menu - View commit details
-
Copy full SHA for 9c4c65a - Browse repository at this point
Copy the full SHA 9c4c65aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 52ad0ab - Browse repository at this point
Copy the full SHA 52ad0abView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2beb8eb - Browse repository at this point
Copy the full SHA 2beb8ebView commit details -
Configuration menu - View commit details
-
Copy full SHA for a3607ea - Browse repository at this point
Copy the full SHA a3607eaView commit details -
Configuration menu - View commit details
-
Copy full SHA for d8a11b1 - Browse repository at this point
Copy the full SHA d8a11b1View commit details -
Configuration menu - View commit details
-
Copy full SHA for b930ec7 - Browse repository at this point
Copy the full SHA b930ec7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 998d39b - Browse repository at this point
Copy the full SHA 998d39bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7fc6c2f - Browse repository at this point
Copy the full SHA 7fc6c2fView commit details -
Configuration menu - View commit details
-
Copy full SHA for c097d20 - Browse repository at this point
Copy the full SHA c097d20View commit details -
Configuration menu - View commit details
-
Copy full SHA for 66ecd42 - Browse repository at this point
Copy the full SHA 66ecd42View commit details -
Configuration menu - View commit details
-
Copy full SHA for d20381b - Browse repository at this point
Copy the full SHA d20381bView commit details -
htlcswitch: defer processRemoteAdds when quiescent
In this commit we defer processRemoteAdds using a new mechanism on the quiescer where we capture a closure that needs to be run. We do this because we need to avoid the scenario where we send back immediate resolutions to the newly added HTLCs when quiescent as it is a protocol violation. It is not enough for us to simply defer sending the messages since the purpose of quiescence itself is to have well-defined and agreed upon channel state. If, for whatever reason, the node (or connection) is restarted between when these hooks are captured and when they are ultimately run, they will be resolved by the resolveFwdPkgs logic when the link comes back up. In a future commit we will explicitly call the quiescer's resume method when it is OK for htlc traffic to commence.
Configuration menu - View commit details
-
Copy full SHA for e63e310 - Browse repository at this point
Copy the full SHA e63e310View commit details -
Configuration menu - View commit details
-
Copy full SHA for cb867aa - Browse repository at this point
Copy the full SHA cb867aaView commit details -
htlcswitch: implement noop quiescer
In this commit we implement a noop quiescer that we will use when the feature hasn't been negotiated. This will make it far easier to manage quiescence operations without having a number of if statements in the link logic.
Configuration menu - View commit details
-
Copy full SHA for 42315d9 - Browse repository at this point
Copy the full SHA 42315d9View commit details -
htlcswitch+peer: allow the disabling of quiescence
Here we add a flag where we can disable quiescence. This will be used in the case where the feature is not negotiated with our peer.
Configuration menu - View commit details
-
Copy full SHA for 68ef311 - Browse repository at this point
Copy the full SHA 68ef311View commit details -
Configuration menu - View commit details
-
Copy full SHA for a98b790 - Browse repository at this point
Copy the full SHA a98b790View commit details -
Configuration menu - View commit details
-
Copy full SHA for a269a83 - Browse repository at this point
Copy the full SHA a269a83View commit details -
Configuration menu - View commit details
-
Copy full SHA for f89f44d - Browse repository at this point
Copy the full SHA f89f44dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 58eb9c9 - Browse repository at this point
Copy the full SHA 58eb9c9View commit details -
Configuration menu - View commit details
-
Copy full SHA for e072626 - Browse repository at this point
Copy the full SHA e072626View commit details -
Configuration menu - View commit details
-
Copy full SHA for dd55c6e - Browse repository at this point
Copy the full SHA dd55c6eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 56a34cb - Browse repository at this point
Copy the full SHA 56a34cbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 30dbe64 - Browse repository at this point
Copy the full SHA 30dbe64View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8d34873 - Browse repository at this point
Copy the full SHA 8d34873View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5d4020f - Browse repository at this point
Copy the full SHA 5d4020fView commit details -
channeldb+lnwallet: add epoch history to OpenChannel
This commit takes the CommitChainEpochHistory defined in the last commit and adds it to the OpenChannel structure. As of this commit it is essentially redundant with the ChanCfgs but it will capture the history of the ChanCfgs when we add the ability to update them.
Configuration menu - View commit details
-
Copy full SHA for dc3aef4 - Browse repository at this point
Copy the full SHA dc3aef4View commit details -
lnwallet: use CommitChainEpochHistory to determine CsvDelay during Br…
…each This commit changes the way we create breach retributions to use the CsvDelay we compute from the CommitChainEpochHistory so as to account for the possibility that the channel parameters have changed since opening.
Configuration menu - View commit details
-
Copy full SHA for 6678f08 - Browse repository at this point
Copy the full SHA 6678f08View commit details -
Configuration menu - View commit details
-
Copy full SHA for 72f6fe8 - Browse repository at this point
Copy the full SHA 72f6fe8View commit details