Skip to content

Basic Splicing #3298

Open
Open
@optout21

Description

@optout21

Basic implementation of channel splicing, with limitations (tracking: #1621).
Support channel splicing between two LDK instances, increasing channel capacity by adding some UTXOs, resulting in a usable channel.
Includes support for following messages: splice_init, splice_ack, tx_add_input, tx_add_output, tx_complete, tx_signatures, splice_locked.

The following limitations are acceptable, and handled later (it's always fine to include more right away):

  • No quiescence is used/checked
  • Only splice-in supported, splice-out not
  • Splice from V2 channel only (dual funded), not from V1 channel
  • Acceptor does not contribute inputs to the splice
  • RBF not supported
  • between two LDK instances
  • Interruptions and restarts may not be handled
  • Defer some complex error scenarios

Some prerequisites:
#3137
#2302
#3294
#3295

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions