-
Notifications
You must be signed in to change notification settings - Fork 266
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
Update to select funding inputs before sending open_channel2 and splice_init #2903
base: master
Are you sure you want to change the base?
Commits on Aug 1, 2024
-
We replace our experimental version of `splice_init`, `splice_ack` and `splice_locked` by their official version. If our peer is using the experimental feature bit, we convert our outgoing messages to use the experimental encoding and incoming messages to the official messages. We also change the TLV fields added to `tx_add_input`, `tx_signatures` and `splice_locked` to match the spec version. We always write both the official and experimental TLV to updated nodes (because the experimental one is odd and will be ignored) but we drop the official TLV if our peer is using the experimental feature, because it won't understand the even TLV field. This guarantees backwards-compatibility with peers who only support the experimental feature.
Configuration menu - View commit details
-
Copy full SHA for addc7c9 - Browse repository at this point
Copy the full SHA addc7c9View commit details -
Remove support for splicing without quiescence
We initially supported splicing with a poor man's quiescence, where we allowed splice messages if the commitments were already quiescent. We've shipped support for quiescence since then, which means that new even nodes relying on experimental splicing should support quiescence. We can thus remove support for the non-quiescent version.
Configuration menu - View commit details
-
Copy full SHA for 64b4879 - Browse repository at this point
Copy the full SHA 64b4879View commit details -
Add support for RBF-ing splice transactions
If the latest splice transaction doesn't confirm, we allow exchanging `tx_init_rbf` and `tx_ack_rbf` to create another splice transaction to replace it. We use the same funding contribution as the previous splice. We disallow creating another splice transaction using `splice_init` if we have several RBF attempts for the latest splice: we cannot know which one of them will confirm and should be spent by the new splice.
Configuration menu - View commit details
-
Copy full SHA for 2d350e5 - Browse repository at this point
Copy the full SHA 2d350e5View commit details
Commits on Aug 27, 2024
-
Disallow chains of unconfirmed splice transactions
When 0-conf isn't used, we reject `splice_init` while the previous splice transaction hasn't confirmed. Our peer should either use RBF instead of creating a new splice, or they should wait for our node to receive the block that confirmed the previous transaction. This protects against chains of unconfirmed transactions.
Configuration menu - View commit details
-
Copy full SHA for cb02ea9 - Browse repository at this point
Copy the full SHA cb02ea9View commit details
Commits on Sep 4, 2024
-
Add optional
maxExcess
parameter to channelopen
APIThis change passes `maxExcess` to Peer via OpenChannel and from Peer to Channel via INPUT_INIT_CHANNEL_INITIATOR. The `maxExcess` parameter will be used by bitcoind funding calls but is not currently used.
Configuration menu - View commit details
-
Copy full SHA for 5003dc0 - Browse repository at this point
Copy the full SHA 5003dc0View commit details -
Add maxExcess and addExcessToRecipientPosition params to fundTransact…
…ion calls These parameters are only supported in a testing branch of bitcoind for now.
Configuration menu - View commit details
-
Copy full SHA for 4a03134 - Browse repository at this point
Copy the full SHA 4a03134View commit details -
Add maxExcess_opt to ChannelParams in NodeParams
This will be used by non-initiators when funding dual funded channels and splicing
Configuration menu - View commit details
-
Copy full SHA for 8cc2e4a - Browse repository at this point
Copy the full SHA 8cc2e4aView commit details
Commits on Sep 12, 2024
-
Update to select funding inputs before sending open_channel2 and spli…
…ce_init - If `addExcessToRecipientPosition_opt` is set, excess from funding (if any) will be added to the proposed `fundingAmount`/`fundingContribution` before sending `open_channel2`/`splice_init` respectively. - We assume our peer requires confirmed inputs. In the future we could add a heuristic for this, but it's safer to assume they want confirmed inputs.
Configuration menu - View commit details
-
Copy full SHA for 38ae09a - Browse repository at this point
Copy the full SHA 38ae09aView commit details