Uh oh!
There was an error while loading. Please reload this page.
Attributable failures - #3065
Conversation
336a993 to
1d57546Comparet-bast
commented
Apr 24, 2025
Thanks, will take a look at this next week! Meanwhile, could you take a look at the interactions with trampoline and answer Joost here: lightning/bolts#836 (comment) |
There was a problem hiding this comment.
I haven't reviewed the code yet, but before doing so I'm not seeing important tests:
- Apart from the tests in
SphinxSpec, I don't see any test:- are there official spec test vectors? If not, we must create some, and if there are already some, it should be a dedicated unit test to make it obvious
- can you add unit tests where this is used during payments (maybe in
PaymentPacketSpec) to verify the complete encryption/decryption from failure messages?
- Have you done cross-compatibility tests? We must verify cross-compatibility before merging any of this. The PR description should detail what has been tested, against what implementation, and what works and what doesn't work
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
2da9b91 to
3f6ba7fCompare3f6ba7f to
34db493Compare
t-bast
left a comment
There was a problem hiding this comment.
Looks mostly good to me, but I think we're missing tests for the scenarios where one of the intermediate nodes drops the attribution data, or where part of the route does not support attributable failures. That's what makes attributable failures useful, allowing us to detect that at least a subset of the route is honest!
I think some of those tests should be in the official test vectors, can you discuss that with Joost to see how they could be included?
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
thomash-acinq
commented
May 15, 2025
I've added tests checking that we are able to attribute failures even if the failing node is hiding. I'll suggest to add it to the spec. |
t-bast
left a comment
There was a problem hiding this comment.
Can you add release notes since this is a new spec feature?
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
06cca9a to
992939bCompare992939b to
1d6a225CompareUh oh!
There was an error while loading. Please reload this page.
Implements lightning/bolts#1044
For cross compatibility, the following scenarios have been successfully tested:
It is disabled by default since the spec may not be final, and will be enabled once the spec PR has been merged to the BOLTs.