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

[custom channels 5/5]: merge custom channel staging branch into master #8960

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

Commits on Sep 20, 2024

  1. routing: add htlcAmt to PaymentBandwidth method of TlvTrafficShaper

    This commit was added to the 0-19-staging branch recently and therefore
    didn't make it into a previous part yet. So it's unrelated to the
    changes in this part but is required for the whole custom channel saga.
    GeorgeTsagk authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    84247fa View commit details
    Browse the repository at this point in the history
  2. lnwire: modify TestLightningWireProtocol to use sub-tests

    This way, it's possible to run induvidual tests to target failures.
    Roasbeef authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    873a6e2 View commit details
    Browse the repository at this point in the history
  3. contractcourt: convert taprootBriefcase to use new tlv record type

    This commit doesn't yet go all the way to modify all the other records
    quite yet.
    Roasbeef authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    069d8c0 View commit details
    Browse the repository at this point in the history
  4. lnwallet: add new aux resolver interface

    This will be used by external callers to modify the way we resolve
    contracts on chain. For a given contract, we'll store an extra "blob",
    that will later be presented during the sweeping phase.
    Roasbeef authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    b3621e4 View commit details
    Browse the repository at this point in the history
  5. contractcourt: add CommitBlob to taprootBriefcase

    This'll be used to store the extra resolution information for the
    commitment outputs.
    Roasbeef authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    c146ca6 View commit details
    Browse the repository at this point in the history
  6. lnwallet+peer: move internalKeyForAddr to lnwallet package

    This way we can re-use it. We also make it slightly more generalized.
    Roasbeef authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    e069d99 View commit details
    Browse the repository at this point in the history
  7. input: refactor all inputs to use MakeBaseInput, add opts

    In this commit, we refactor all the other constructors for the input to
    use MakeBaseInput. We also add a new set of functional options as well.
    This'll be useful later on to ensure that new options are properly
    applied to all the input types.
    Roasbeef authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    4c3352f View commit details
    Browse the repository at this point in the history
  8. input: add ResolutionBlob method to inputKit

    We also update breachedOutput w/ the new API.
    Roasbeef authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    16bf38b View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    efbe593 View commit details
    Browse the repository at this point in the history
  10. server+sweep: convert GenSweepScript to use new addr type

    We convert it to use lnwallet.AddrWithKey, as in the future, knowing the
    internal key for an address will be useful.
    Roasbeef authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    85ae220 View commit details
    Browse the repository at this point in the history
  11. sweep: add new AuxSweeper interface

    In this commit, we add a new AuxSweeper interface. This'll take a set of
    inputs, and a change addr for the sweep transaction, then optionally
    return a new sweep output to be added to the sweep transaction.
    
    We also add a new NotifyBroadcast method.  This'll be used to notify
    that we're _about_ to broadcast a sweeping transaction. The set of
    inputs is passed in, which allows the caller to prepare for the ultimate
    broadcast of the sweeping transaction.
    
    We also add ExtraTxOut to BumpRequest pass fees to NotifyBroadcast. This
    allows the callee to know the total fee of the sweeping transaction.
    Roasbeef authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    92b1d17 View commit details
    Browse the repository at this point in the history
  12. sweep: update sweeper to use AuxSweeper to add extra change addr

    In this commit, we start to use the AuxSweeper (if present) to obtain a
    new extra change addr we should add to the sweeping transaction. With
    this, we'll take the set of inputs and our change addr, and then maybe
    gain a new change addr to add to the sweep transaction.
    
    The extra change addr will be treated as an extra required tx out,
    shared across all the relevant inputs. This'll also be used in
    NeedWalletInput to make sure that we add an extra input if needed to be
    able to pay for the change addr.
    Roasbeef authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    8856f86 View commit details
    Browse the repository at this point in the history
  13. contractcourt: pause resolution for HTLCs w/ custom records

    This is a hold over until the aux resolution is finalized for HTLC
    outputs.
    Roasbeef authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    4fcd502 View commit details
    Browse the repository at this point in the history
  14. multi: hook up new aux interfaces

    Roasbeef authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    62797de View commit details
    Browse the repository at this point in the history
  15. contractcourt: update GenSweepScript to return internal key

    For the upcoming aux sweeper integration, the internal key is needed for
    the call backs.
    Roasbeef authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    d0b102c View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    1461d8f View commit details
    Browse the repository at this point in the history
  17. contractcourt: integration aux sweeper to breach arb

    Similar to the sweeper, when we're about to make a new breach
    transaction, we ask the sweeper for a new change address, if it has one.
    Then when we go to publish, we notify broadcast.
    Roasbeef authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    8a4af3c View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    d53438a View commit details
    Browse the repository at this point in the history
  19. feature: add awareness of new taproot chans overlay feature bit

    This bit will be false by default in current production deployments.
    Roasbeef authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    79426b1 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    2afa10f View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    4eb0d6f View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    fe4e4ec View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    fabf087 View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    fdca15d View commit details
    Browse the repository at this point in the history
  25. lnd: signal taproot overlay chans based on config

    We also add a sanity check to make sure they can't be signaled without
    the aux interfaces.
    Roasbeef authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    5304f58 View commit details
    Browse the repository at this point in the history
  26. docs: update release notes

    GeorgeTsagk authored and guggero committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    d1827a4 View commit details
    Browse the repository at this point in the history