Skip to content

Conversation

@t-bast
Copy link
Member

@t-bast t-bast commented Mar 3, 2025

We replace our experimental version of splice_init, splice_ack and splice_locked by their official version. We also change the TLV fields added to commit_sig, tx_add_input, and tx_signatures to match the spec version and introduce the start_batch message.

We also implement the updated retransmission logic for channel_ready and splice_locked based on the my_current_funding_locked and your_last_funding_locked TLVs added to channel_reestablish.

We only allow connecting to peers who support the official splicing feature.

Builds on top of #787

t-bast added 3 commits May 16, 2025 09:48
We introduce a `CommitSigBatch` class to group `commit_sig` messages
when splice transactions are pending. We use this class to ensure that
all the `commit_sig` messages in the batch are sent together to our
peer, without any other messages in-between.

When we receive `commit_sig` messages that contain the `batch` TLV, we
group them directly in the `PeerConnection` before relaying them as a
batch to the channel.
We replace our experimental version of `splice_init`, `splice_ack` and
`splice_locked` by their official version. We also change the TLV fields
added to `commit_sig`, `tx_add_input`, and `tx_signatures` to match the
spec version.

We only allow connecting to peers who support the official splicing
feature.
With splicing, we introduce new TLVs to `channel_reestablish` to let
our peer know:

- the latest `splice_locked` (or `channel_ready`) we received
- the latest `splice_locked` (or `channel_ready`) we're ready to send

This lets us clean-up retransmission of those messages and remove an
edge case around concurrent locking and payments.
@t-bast t-bast force-pushed the splicing-official branch from 938722c to 29d8ae8 Compare May 16, 2025 08:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants