Skip to content

Conversation

guggero
Copy link
Contributor

@guggero guggero commented Jul 29, 2024

Depends on lightninglabs/taproot-assets#1048.
Depends on lightningnetwork/lnd#8947.

Uses the new tapchannelrpc RPC methods SendPayment and AddInvoice that do the RFQ part inline, so we don't have to keep that logic in the litcli code.

@guggero
Copy link
Contributor Author

guggero commented Jul 30, 2024

I tested all commands manually, everything seems to work as expected. Ready for full review now.

@guggero guggero requested a review from ffranr July 30, 2024 20:33
return m.invoiceChan, m.invoiceErrChan, nil
}

type mockRouter struct {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should add a bit more to this commit message. I'm not certain what's happening here. I think you're removing functionality from the LND mock and putting it into a new mock called mockRouter.

Is that split related to the lndclient version bump?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, fully understand the diff but missing rationale/context

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added some rationale to the commit message.

t, src, dst, btcutil.Amount(htlcCarrierAmt),
encodeResp.CustomRecords,
)
time.Sleep(time.Second)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unnecessary sleep? Shouldn't getAssetPaymentResult block on the recv?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unfortunately and strangely the tests fail without it... It shouldn't make a difference, but somehow it does. Moved it to a single place and added an explanatory comment.

Copy link
Member

@GeorgeTsagk GeorgeTsagk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lgtm! 🥕

return m.invoiceChan, m.invoiceErrChan, nil
}

type mockRouter struct {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, fully understand the diff but missing rationale/context

Because each lndclient service mock now needs to implement the
RawClientWithMacAuth method but with a different type, we can't
implement two lndclient service mocks within a single struct, as
that would require us to have two methods with the same name but
different types.
So we split the lnd and rounter mocks into two separate structs.
@guggero guggero force-pushed the tap-channel-rpcs branch 2 times, most recently from aeedc66 to 734627b Compare August 7, 2024 13:44
@guggero guggero requested a review from ffranr August 7, 2024 13:44
@guggero guggero force-pushed the tap-channel-rpcs branch 3 times, most recently from ed56dd9 to d8c4d4d Compare August 7, 2024 16:28
guggero added 2 commits August 7, 2024 18:47
With this commit we bump to the latest version of taproot assets and
lnd (staging branch), so we can use the new SendPayment RPC that handles
the RFQ part inline.
@Roasbeef Roasbeef merged commit d4b2b41 into 0-19-staging Aug 9, 2024
12 of 13 checks passed
@guggero guggero deleted the tap-channel-rpcs branch August 9, 2024 06:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: ✅ Done
Development

Successfully merging this pull request may close these issues.

4 participants