Skip to content

Send splice commit_sigs as a batch #787

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

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from
Draft

Conversation

t-bast
Copy link
Member

@t-bast t-bast commented May 12, 2025

There has been some discussion on the splicing spec around batching the set of commit_sig messages that are sent while a splice is ongoing (see lightning/bolts@b5b5572).

In this PR, we ensure that our commit_sig messages are sent as a batch (no other messages can be interleaved between commit_sig messages). We also receive commit_sig messages as a batch, which means we must wait for ACINQ/eclair#3083 to be deployed before merging this PR.

We don't yet implement the start_batch message that was introduced in the BOLTs: this will be done once eclair supports it and the spec PR is merged (see #768).

@t-bast t-bast requested review from remyers and pm47 May 12, 2025 14:57
@t-bast t-bast marked this pull request as draft May 13, 2025 14:15
@t-bast t-bast removed request for pm47 and remyers May 13, 2025 14:15
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.
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.

1 participant