Skip to content

Noop HTLC itest fixes #1080

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

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 11 additions & 7 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -25,23 +25,23 @@ require (
github.com/lightninglabs/lightning-terminal/autopilotserverrpc v0.0.3
github.com/lightninglabs/lightning-terminal/litrpc v1.0.2
github.com/lightninglabs/lightning-terminal/perms v1.0.1
github.com/lightninglabs/lndclient v0.19.0-7
github.com/lightninglabs/lndclient v0.19.0-9
github.com/lightninglabs/loop v0.31.2-beta
github.com/lightninglabs/loop/looprpc v1.0.8
github.com/lightninglabs/loop/swapserverrpc v1.0.15
github.com/lightninglabs/pool v0.6.6-beta
github.com/lightninglabs/pool/auctioneerrpc v1.1.3
github.com/lightninglabs/pool/poolrpc v1.0.1
github.com/lightninglabs/taproot-assets v0.6.0
github.com/lightninglabs/taproot-assets/taprpc v1.0.7
github.com/lightningnetwork/lnd v0.19.1-beta
github.com/lightninglabs/taproot-assets v0.6.1-0.20250702120050-d963c73f266a
github.com/lightninglabs/taproot-assets/taprpc v1.0.9-0.20250702120050-d963c73f266a
github.com/lightningnetwork/lnd v0.19.1-beta.rc1.0.20250623232057-b48e2763a798
github.com/lightningnetwork/lnd/cert v1.2.2
github.com/lightningnetwork/lnd/clock v1.1.1
github.com/lightningnetwork/lnd/fn v1.2.3
github.com/lightningnetwork/lnd/fn/v2 v2.0.8
github.com/lightningnetwork/lnd/kvdb v1.4.16
github.com/lightningnetwork/lnd/sqldb v1.0.9
github.com/lightningnetwork/lnd/tlv v1.3.1
github.com/lightningnetwork/lnd/sqldb v1.0.10
github.com/lightningnetwork/lnd/tlv v1.3.2
github.com/lightningnetwork/lnd/tor v1.1.6
github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f
github.com/mwitkow/grpc-proxy v0.0.0-20230212185441-f345521cb9c9
Expand Down Expand Up @@ -148,7 +148,7 @@ require (
github.com/lightninglabs/lightning-node-connect/hashmailrpc v1.0.3 // indirect
github.com/lightninglabs/neutrino v0.16.1 // indirect
github.com/lightninglabs/neutrino/cache v1.1.2 // indirect
github.com/lightningnetwork/lightning-onion v1.2.1-0.20240712235311-98bd56499dfb // indirect
github.com/lightningnetwork/lightning-onion v1.2.1-0.20240815225420-8b40adf04ab9 // indirect
github.com/lightningnetwork/lnd/healthcheck v1.2.6 // indirect
github.com/lightningnetwork/lnd/queue v1.1.1 // indirect
github.com/lightningnetwork/lnd/ticker v1.1.1 // indirect
Expand Down Expand Up @@ -247,3 +247,7 @@ replace google.golang.org/protobuf => github.com/lightninglabs/protobuf-go-hex-d
// it is a replace in the tapd repository, it doesn't get propagated here
// automatically, so we need to add it manually.
replace github.com/golang-migrate/migrate/v4 => github.com/lightninglabs/migrate/v4 v4.18.2-9023d66a-fork-pr-2

replace github.com/lightningnetwork/lnd => github.com/GeorgeTsagk/lnd v0.0.0-20250702112743-e6c948cdf8f4

replace github.com/lightningnetwork/lnd/sqldb => github.com/GeorgeTsagk/lnd/sqldb v0.0.0-20250702112743-e6c948cdf8f4
28 changes: 14 additions & 14 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -603,6 +603,10 @@ github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03
github.com/BurntSushi/toml v1.3.2 h1:o7IhLm0Msx3BaB+n3Ag7L8EVlByGnpq14C4YWiu/gL8=
github.com/BurntSushi/toml v1.3.2/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ=
github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo=
github.com/GeorgeTsagk/lnd v0.0.0-20250702112743-e6c948cdf8f4 h1:rJsjlTosFNEcaktrvZdNiuOxBDVOTnHrzs/in7YYFUE=
github.com/GeorgeTsagk/lnd v0.0.0-20250702112743-e6c948cdf8f4/go.mod h1:s8TSzKAEoXyzjOGsm9AXm/kIT1Hiugg7J15bykFM2y4=
github.com/GeorgeTsagk/lnd/sqldb v0.0.0-20250702112743-e6c948cdf8f4 h1:ec/mPVkKeKuBy/apao8JJTKcEPkthcuSXf1SspfmjjA=
github.com/GeorgeTsagk/lnd/sqldb v0.0.0-20250702112743-e6c948cdf8f4/go.mod h1:c/vWoQfcxu6FAfHzGajkIQi7CEIeIZFhhH4DYh1BJpc=
github.com/JohnCGriffin/overflow v0.0.0-20211019200055-46fa312c352c/go.mod h1:X0CRv0ky0k6m906ixxpzmDRLvX58TFUKS2eePweuyxk=
github.com/Masterminds/semver/v3 v3.1.1/go.mod h1:VPu/7SZ7ePZ3QOrcuXROw5FAcLl4a0cBrbBpGY/8hQs=
github.com/Masterminds/semver/v3 v3.2.0 h1:3MEsd0SM6jqZojhjLWWeBY+Kcjy9i6MQAeY7YgDP83g=
Expand Down Expand Up @@ -1150,8 +1154,8 @@ github.com/lightninglabs/lightning-node-connect/hashmailrpc v1.0.3 h1:NuDp6Z+QNM
github.com/lightninglabs/lightning-node-connect/hashmailrpc v1.0.3/go.mod h1:bDnEKRN1u13NFBuy/C+bFLhxA5bfd3clT25y76QY0AM=
github.com/lightninglabs/lightning-node-connect/mailbox v1.0.1 h1:RWmohykp3n/DTMWY8b18RNTEcLDf+KT/AZHKYdOObkM=
github.com/lightninglabs/lightning-node-connect/mailbox v1.0.1/go.mod h1:NYtNexZE9gO1eOeegTxmIW9fqanl7eZ9cOrE9yewSAk=
github.com/lightninglabs/lndclient v0.19.0-7 h1:8+wGQnO8KSUq9elzGLscBUGchID+bWvrpX2qCo+tU48=
github.com/lightninglabs/lndclient v0.19.0-7/go.mod h1:35d50tEMFxlJlKTZGYA6EdOllPsbxS4FUmEVbETUx+Q=
github.com/lightninglabs/lndclient v0.19.0-9 h1:ell27omDoks79upoAsO/7QY40O93ud4tAtBXXZilqok=
github.com/lightninglabs/lndclient v0.19.0-9/go.mod h1:35d50tEMFxlJlKTZGYA6EdOllPsbxS4FUmEVbETUx+Q=
github.com/lightninglabs/loop v0.31.2-beta h1:lm5t5FqDpSfQCxoz/vTvXpylxSgU+gvJJIbfJiKeyUk=
github.com/lightninglabs/loop v0.31.2-beta/go.mod h1:xnPKuZmLusNERwzz15RZ7mpQ8xuSqqh3g8Qw/PRyiRE=
github.com/lightninglabs/loop/looprpc v1.0.8 h1:OFmJNLjem6fLuH1YUO+3G6QA1wmjAd0zyhvdHONOBDs=
Expand All @@ -1172,14 +1176,12 @@ github.com/lightninglabs/pool/poolrpc v1.0.1 h1:XbNx28TYwEj/PVsnnF9TnveVCMCYfS1v
github.com/lightninglabs/pool/poolrpc v1.0.1/go.mod h1:836icifg/SBnZbiae0v3jeRRzCrT6LWo32SqCS/JiGk=
github.com/lightninglabs/protobuf-go-hex-display v1.34.2-hex-display h1:w7FM5LH9Z6CpKxl13mS48idsu6F+cEZf0lkyiV+Dq9g=
github.com/lightninglabs/protobuf-go-hex-display v1.34.2-hex-display/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw=
github.com/lightninglabs/taproot-assets v0.6.0 h1:nHloX+QR2PbUmogry1T+LiYh1TWBoFnTMHOy4Hyq1VM=
github.com/lightninglabs/taproot-assets v0.6.0/go.mod h1:CkK0drLPo5M6ib9YRE3lD+znOfe0Oxh6zMvGN1SJXDo=
github.com/lightninglabs/taproot-assets/taprpc v1.0.7 h1:yUG9vdpajiU0gp4wDkTPz/6BI8Vr52OM2paahlVrAys=
github.com/lightninglabs/taproot-assets/taprpc v1.0.7/go.mod h1:vOM2Ap2wYhEZjiJU7bNNg+e5tDxkvRAuyXwf/KQ4tgo=
github.com/lightningnetwork/lightning-onion v1.2.1-0.20240712235311-98bd56499dfb h1:yfM05S8DXKhuCBp5qSMZdtSwvJ+GFzl94KbXMNB1JDY=
github.com/lightningnetwork/lightning-onion v1.2.1-0.20240712235311-98bd56499dfb/go.mod h1:c0kvRShutpj3l6B9WtTsNTBUtjSmjZXbJd9ZBRQOSKI=
github.com/lightningnetwork/lnd v0.19.1-beta h1:lIixXD/CemfvFFU2pWzGciOGRZ8vuQNPCzpKn/xt8zA=
github.com/lightningnetwork/lnd v0.19.1-beta/go.mod h1:iHZ/FHFK00BqV6qgDkZZfqWE3LGtgE0U5KdO5WrM+eQ=
github.com/lightninglabs/taproot-assets v0.6.1-0.20250702120050-d963c73f266a h1:6fHTtKdyvuOr476pEW5uTmVZYAwSnTM+WE/Pb5JbBcU=
github.com/lightninglabs/taproot-assets v0.6.1-0.20250702120050-d963c73f266a/go.mod h1:spDBAvs+KEYiKzHQgUxh6ZqfWYm8bJH1MiYHMrV7Wis=
github.com/lightninglabs/taproot-assets/taprpc v1.0.9-0.20250702120050-d963c73f266a h1:0jJ/q7N0+S2W6Zctg7gLrkeqwZu1T2W+6lmfxr3Ps8Y=
github.com/lightninglabs/taproot-assets/taprpc v1.0.9-0.20250702120050-d963c73f266a/go.mod h1:c8gTEcKEUoUPVChgZNwqTL1hss7UWa5FDeObr8WBzQk=
github.com/lightningnetwork/lightning-onion v1.2.1-0.20240815225420-8b40adf04ab9 h1:6D3LrdagJweLLdFm1JNodZsBk6iU4TTsBBFLQ4yiXfI=
github.com/lightningnetwork/lightning-onion v1.2.1-0.20240815225420-8b40adf04ab9/go.mod h1:EDqJ3MuZIbMq0QI1czTIKDJ/GS8S14RXPwapHw8cw6w=
github.com/lightningnetwork/lnd/cert v1.2.2 h1:71YK6hogeJtxSxw2teq3eGeuy4rHGKcFf0d0Uy4qBjI=
github.com/lightningnetwork/lnd/cert v1.2.2/go.mod h1:jQmFn/Ez4zhDgq2hnYSw8r35bqGVxViXhX6Cd7HXM6U=
github.com/lightningnetwork/lnd/clock v1.1.1 h1:OfR3/zcJd2RhH0RU+zX/77c0ZiOnIMsDIBjgjWdZgA0=
Expand All @@ -1194,12 +1196,10 @@ github.com/lightningnetwork/lnd/kvdb v1.4.16 h1:9BZgWdDfjmHRHLS97cz39bVuBAqMc4/p
github.com/lightningnetwork/lnd/kvdb v1.4.16/go.mod h1:HW+bvwkxNaopkz3oIgBV6NEnV4jCEZCACFUcNg4xSjM=
github.com/lightningnetwork/lnd/queue v1.1.1 h1:99ovBlpM9B0FRCGYJo6RSFDlt8/vOkQQZznVb18iNMI=
github.com/lightningnetwork/lnd/queue v1.1.1/go.mod h1:7A6nC1Qrm32FHuhx/mi1cieAiBZo5O6l8IBIoQxvkz4=
github.com/lightningnetwork/lnd/sqldb v1.0.9 h1:7OHi+Hui823mB/U9NzCdlZTAGSVdDCbjp33+6d/Q+G0=
github.com/lightningnetwork/lnd/sqldb v1.0.9/go.mod h1:OG09zL/PHPaBJefp4HsPz2YLUJ+zIQHbpgCtLnOx8I4=
github.com/lightningnetwork/lnd/ticker v1.1.1 h1:J/b6N2hibFtC7JLV77ULQp++QLtCwT6ijJlbdiZFbSM=
github.com/lightningnetwork/lnd/ticker v1.1.1/go.mod h1:waPTRAAcwtu7Ji3+3k+u/xH5GHovTsCoSVpho0KDvdA=
github.com/lightningnetwork/lnd/tlv v1.3.1 h1:o7CZg06y+rJZfUMAo0WzBLr0pgBWCzrt0f9gpujYUzk=
github.com/lightningnetwork/lnd/tlv v1.3.1/go.mod h1:pJuiBj1ecr1WWLOtcZ+2+hu9Ey25aJWFIsjmAoPPnmc=
github.com/lightningnetwork/lnd/tlv v1.3.2 h1:MO4FCk7F4k5xPMqVZF6Nb/kOpxlwPrUQpYjmyKny5s0=
github.com/lightningnetwork/lnd/tlv v1.3.2/go.mod h1:pJuiBj1ecr1WWLOtcZ+2+hu9Ey25aJWFIsjmAoPPnmc=
github.com/lightningnetwork/lnd/tor v1.1.6 h1:WHUumk7WgU6BUFsqHuqszI9P6nfhMeIG+rjJBlVE6OE=
github.com/lightningnetwork/lnd/tor v1.1.6/go.mod h1:qSRB8llhAK+a6kaTPWOLLXSZc6Hg8ZC0mq1sUQ/8JfI=
github.com/ltcsuite/ltcd v0.0.0-20190101042124-f37f8bf35796 h1:sjOGyegMIhvgfq5oaue6Td+hxZuf3tDC8lAPrFldqFw=
Expand Down
4 changes: 3 additions & 1 deletion itest/assets_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ import (
"github.com/lightninglabs/taproot-assets/tapfreighter"
"github.com/lightninglabs/taproot-assets/taprpc"
"github.com/lightninglabs/taproot-assets/taprpc/assetwalletrpc"
"github.com/lightninglabs/taproot-assets/taprpc/authmailboxrpc"
"github.com/lightninglabs/taproot-assets/taprpc/mintrpc"
"github.com/lightninglabs/taproot-assets/taprpc/rfqrpc"
tchrpc "github.com/lightninglabs/taproot-assets/taprpc/tapchannelrpc"
Expand Down Expand Up @@ -2216,7 +2217,7 @@ func defaultCoOpCloseBalanceCheck(t *testing.T, local, remote *HarnessNode,
// transaction was inserted into the local universe.
//
// We expect that at most four outputs exist: one for the local asset
// output, one for the remote asset output, one for the remote BTC
// output, one for the remote asset output, one for the local BTC
// channel balance and one for the remote BTC channel balance.
//
// Those outputs are only present if the respective party has a
Expand Down Expand Up @@ -2548,6 +2549,7 @@ type tapClient struct {
rfqrpc.RfqClient
tchrpc.TaprootAssetChannelsClient
universerpc.UniverseClient
authmailboxrpc.MailboxClient
}

func newTapClient(t *testing.T, node *HarnessNode) *tapClient {
Expand Down
37 changes: 29 additions & 8 deletions itest/litd_custom_channels_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -1279,16 +1279,23 @@ func testCustomChannelsGroupTranchesForceClose(ctx context.Context,
// that transports assets from two tranches.
// ------------
const (
keySendAmount = 5000
numSends = 6
totalFirstSend = keySendAmount * numSends
keySendAmount = 5000
keySendSatAmount = 5000
numSends = 6
totalFirstSend = keySendAmount * numSends
)
for i := 0; i < numSends; i++ {
sendAssetKeySendPayment(
t.t, charlie, dave, keySendAmount, nil,
fn.None[int64](), withGroupKey(groupKey),
)
}

// With noop HTLCs implemented the sats balance of Dave will only
// increase up to the reserve amount. Let's make a direct non-asset
// keysend to make sure the sats balance is also enough.
sendKeySendPayment(t.t, charlie, dave, keySendSatAmount)

logBalanceGroup(t.t, nodes, groupIDs, "after keysend Charlie->Dave")

// ------------
Expand Down Expand Up @@ -1528,8 +1535,9 @@ func testCustomChannelsGroupTranchesHtlcForceClose(ctx context.Context,
// First, we'll send over some funds from Charlie to Dave, as we want
// Dave to be able to extend HTLCs in the other direction.
const (
numPayments = 10
keySendAmount = 2_500
numPayments = 10
keySendAmount = 2_500
keySendSatAmount = 5000
)
for i := 0; i < numPayments; i++ {
sendAssetKeySendPayment(
Expand All @@ -1538,6 +1546,11 @@ func testCustomChannelsGroupTranchesHtlcForceClose(ctx context.Context,
)
}

// With noop HTLCs implemented the sats balance of Dave will only
// increase up to the reserve amount. Let's make a direct non-asset
// keysend to make sure the sats balance is also enough.
sendKeySendPayment(t.t, charlie, dave, keySendSatAmount)

// Now that both parties have some funds, we'll move onto the main test.
//
// We'll make 2 hodl invoice for each peer, so 4 total. From Charlie's
Expand Down Expand Up @@ -4119,16 +4132,24 @@ func runCustomChannelsHtlcForceClose(ctx context.Context, t *harnessTest,
// First, we'll send over some funds from Alice to Bob, as we want Bob
// to be able to extend HTLCs in the other direction.
const (
numPayments = 10
keySendAmount = 2_500
numPayments = 10
keySendAssetAmount = 2_500
keySendSatAmount = 5_000
)
for i := 0; i < numPayments; i++ {
sendAssetKeySendPayment(
t.t, alice, bob, keySendAmount, assetID,
t.t, alice, bob, keySendAssetAmount, assetID,
fn.None[int64](),
)
}

// With noop HTLCs implemented the sats balance of Bob will only
// increase up to the reserve amount. Let's make a direct non-asset
// keysend to make sure the sats balance is also enough.
sendKeySendPayment(t.t, alice, bob, keySendSatAmount)

logBalance(t.t, nodes, assetID, "after keysends to Bob")

// Now that both parties have some funds, we'll move onto the main test.
//
// We'll make 2 hodl invoice for each peer, so 4 total. From Alice's
Expand Down
Loading