-
Notifications
You must be signed in to change notification settings - Fork 123
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
[bug]: Unexpected Payment Success: Invoicing Sats but Paying with Assets #1239
Comments
As mentioned above, the reverse scenario produces the expected behavior:
Logs attached: |
What's unexpected here is that from the user's PoV, we paid 354 sats to pay a 1 sat invoice. |
I flagged #1244 as a PR that is closing this. With the above PR we will produce the expected behavior that @ryanthegentry is describing here. We should expect the payment to fail if we're paying a btc invoice with assets, as the receiver should not settle.
As @Roasbeef says here this is still an issue. Asset HTLCs will always carry a sats amount and if the invoice is small enough we're overpaying significantly. |
Two phenomenon occurring in the original report
Hence will shed this issue from v0.5 and include #1244 |
Background
I am testing direct channel Taproot Assets LN payments in Polar. I have three litd v0.14.0-alpha.rc1 nodes (each backed by their own bitcoind v27.0 node) Alice, Bob, and Carol. Alice has minted 21M units of a Taproot Asset called USDTest with a decimal_display of 6, and opened a 1M asset channel to Bob (so Alice has 1M assets outbound liquidity). They are both using the improved edge node config --taproot-assets.experimental.rfq.mockoracleassetsperbtc=100000000 (where 1 asset = 1 sat). I am testing expected error messages when Bob generates a sats invoice, and Alice tries to pay it with Taproot Assets.
Your environment
Alice's litd config:
Alice's tapcli getinfo output:
Bob's litd config:
Bob's tapcli getinfo output:
Steps to reproduce
Expected behavior
The payment should fail with a
FAILURE_REASON_INCORRECT_PAYMENT_DETAILS
error. This is what happens in the reverse scenario if Bob invoices Taproot Assets, and Alice attempts to pay with sats. Will include those details in a follow-up comment.Actual behavior
Bob invoiced 1 sat. Alice paid him 1 Taproot Asset + the 354 sat dust amount.
Logs for Alice and Bob
alice-direct.log
bob-direct.log
attached.
The text was updated successfully, but these errors were encountered: