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

[1/?]: multi: add ability to fund+use musig2 channels that commit to a tapscript root #8683

Merged
merged 9 commits into from
Apr 30, 2024

Commits on Apr 29, 2024

  1. lnwallet/chanfunding: rename assembler.go to interface.go

    In this commit, we rename the files as assembler.go houses the primary
    interfaces/abstractions of the package. In the rest of the codebase,
    this file is near uniformly called interface.go, so we rename the file
    to make the repo more digestible at a scan.
    Roasbeef authored and guggero committed Apr 29, 2024
    Configuration menu
    Copy the full SHA
    bb0fb86 View commit details
    Browse the repository at this point in the history

Commits on Apr 30, 2024

  1. channeldb: consolidate root bucket TLVs into new struct

    In this commit, we consolidate the root bucket TLVs into a new struct.
    This makes it easier to see all the new TLV fields at a glance. We also
    convert TLV usage to use the new type param based APis.
    Roasbeef authored and guggero committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    1f110dc View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    89cf4c2 View commit details
    Browse the repository at this point in the history
  3. input: add new tapscript root func op to GenTaprootFundingScript

    This'll allow us to create a funding output that uses musig2, but uses a tapscript tweak rather than a normal BIP 86 tweak.
    Roasbeef authored and guggero committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    159f853 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    8a0c25b View commit details
    Browse the repository at this point in the history
  5. multi: update GenTaprootFundingScript to pass tapscript root

    In most cases, we won't yet be passing a root. The option usage helps us keep the control flow mostly unchanged.
    Roasbeef authored and guggero committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    a4a7d11 View commit details
    Browse the repository at this point in the history
  6. lnwallet: update internal funding flow w/ tapscript root

    This isn't hooked up yet to the funding manager, but with this commit, we can now start to write internal unit tests that handle musig2 channels with a tapscript root.
    Roasbeef authored and guggero committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    9466224 View commit details
    Browse the repository at this point in the history
  7. lnwallet+peer: add tapscript root awareness to musig2 sessions

    With this commit, the channel is now aware of if it's a musig2 channel, that also has a tapscript root. We'll need to always pass in the tapscript root each time we: make the funding output, sign a new state, and also verify a new state.
    Roasbeef authored and guggero committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    66fa0a2 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    26ce8ee View commit details
    Browse the repository at this point in the history