Uh oh!
There was an error while loading. Please reload this page.
fuzz: track chanmon claims on PaymentClaimed events - #4635
Conversation
Only record receiver claims in the fuzz payment tracker after the node emits PaymentClaimed. This keeps the tracker aligned with durable claim completion instead of a claim_funds call that a restart may roll back.
👋 Thanks for assigning @TheBlueMatt as a reviewer! |
ldk-claude-review-bot
commented
May 28, 2026
I've thoroughly reviewed the full diff and the surrounding context. The change is small and correct:
No issues found. |
ldk-reviews-bot
commented
May 30, 2026
🔔 1st Reminder Hey @TheBlueMatt! This PR has been waiting for your review. |
ldk-reviews-bot
commented
Jun 1, 2026
🔔 2nd Reminder Hey @TheBlueMatt! This PR has been waiting for your review. |
TheBlueMatt
left a comment
There was a problem hiding this comment.
I mean yes, I believe this should be required, but I'm more interested in why we didn't run into failures without this? Any chance we could debug that and figure out what coverage we're missing?
ldk-reviews-bot
commented
Jun 1, 2026
👋 The first review has been submitted! Do you think this PR is ready for a second reviewer? If so, click here to assign a second reviewer. |
joostjager
commented
Jun 1, 2026
I did try that: #4631 (comment) It seems the reload replay prevented failures from happening. |
TheBlueMatt
commented
Jun 8, 2026
Ah, so we're kinda indirectly checking the "once its claimable, its guaranteed to remain claimable unless you wait so long the HTLC expires" property - that does kinda seem like a useful thing to continue testing and not entirely sure its worth making payment claiming "async" by queuing them and processing them separately to allow this to be reachable. |
joostjager
commented
Jun 8, 2026
I think the fuzzer should stay close to the public contract, and calling |
TheBlueMatt
commented
Jun 8, 2026
Right but the other public contract is that if you see an |
joostjager
commented
Jun 8, 2026
Hm yes, good point. For the force close coverage I can then indeed use the event-given deadline for the assertion. Can close this PR then. |
joostjager
commented
Jun 8, 2026
For the force-close fuzzer addition, I included |
Only record receiver claims in the fuzz payment tracker after the node emits PaymentClaimed. This keeps the tracker aligned with durable claim completion instead of a claim_funds call that a restart may roll back.