Skip to content
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

Channel Splicing (feature 62/63) #1160

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open

Commits on May 2, 2024

  1. Channel Splicing (feature 62/63)

    Splicing allows spending the current funding transaction to replace it
    with a new one that changes the capacity of the channel, allowing both
    peers to add or remove funds to/from their channel balance.
    
    Splicing takes place while a channel is quiescent, to ensure that both
    peers have the same view of the current commitments.
    
    We don't want channels to be unusable while waiting for transactions to
    confirm, so channel operation returns to normal once the splice tx has
    been signed and we're waiting for it to confirm. The channel can then
    be used for payments, as long as those payments are valid for every
    pending splice transactions. Splice transactions can be RBF-ed to speed
    up confirmation.
    
    Once one of the pending splice transactions confirms and reaches
    acceptable depth, peers exchange `splice_locked` to discard the other
    pending splice transactions and the previous funding transaction. The
    confirmed splice transaction becomes the channel funding transaction.
    
    Nodes then advertize this spliced channel to the network, so that nodes
    keep routing payments through it without any downtime.
    t-bast committed May 2, 2024
    Configuration menu
    Copy the full SHA
    7a5a588 View commit details
    Browse the repository at this point in the history

Commits on Jun 6, 2024

  1. Force-close if next_funding_txid don't match

    If both nodes set `next_funding_txid` in their `channel_reestablish`
    message, but to a different value, one of them is very buggy. There
    is no way to correctly resolve this and the channel must be closed.
    
    Suggested by @ddustin
    t-bast committed Jun 6, 2024
    Configuration menu
    Copy the full SHA
    aece0d8 View commit details
    Browse the repository at this point in the history