Skip to content

Instantly share code, notes, and snippets.

@jurvis
Last active April 3, 2023 16:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jurvis/778fcf138d934e8663c84920bb0fe202 to your computer and use it in GitHub Desktop.
Save jurvis/778fcf138d934e8663c84920bb0fe202 to your computer and use it in GitHub Desktop.
jurvis/dunxen Mar 21st, 2023 Dual-Funded Channels/Splicing Sync

jurvis/dunxen Mar 21st, 2023 Dual-Funded Channels/Splicing Sync

Dual Funding

Things in Review

Dual funding messages #1794

Takes care the messages we need for dual-funding, helps with work related to constructing interactive transactions

Splitting up Channel -- a refactor that ties in to everything

Split prefunded Channel into Inbound/Outbound channels #2077 (major refactor in progress)

Upcoming Lifts

Interactive Transaction Construction

Implement interactive tx constructor with typestate state machine based on this section of the spec.

Notes:

  • Depends on #1794. Most of the tedious work has been done locally. dunxen has put up a draft branch for concept ACK/review
  • Jurvis to take a look at breaking ground on this

Channel Initiation/Negotiation

Implement Channel Establishment V2 protocol.

Work to be done:

  • Hook up all message handling but disable dual-funding.
  • Feature bits hooked up for dual-funding
  • Work on full channel establishment v2 flow
  • Interop tests with CLN and Eclair

Notes

  • Depends on #1794/#2077
  • dunxen to start on the channel establishment stuff
  • Negotiation sessions do not require serialization
  • we can likely do "Interactive Transaction Construction" at the same time as "Channel Initiation/Negotiation", and "meet halfway" when implementing funding composition

Splicing

  • Quiescence Protocol

    • Assume channel is already established
    • Blocked by refactor (which one?)
  • Splice Negotiation

    • Reuse state machine of channel initiation/negotiation
    • Depends on interactive-tx (Channel Initiation/Negotiation)

Future Work

Action Items

  • Jurvis to meet with Jeff to talk through plans for dual-funding and make a similar outline for Splicing
  • Duncan to publish his POC for interactive transaction construction for concept review
  • Duncan to land #1794 so Jurvis can start work on Interactive Transaction Construction
  • Jurvis to review when in the entire process we can start work on Splicing
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment