Restart the payer with a pending RGB HTLC in close_force_pending_htlc#136
Conversation
zoedberg
left a comment
There was a problem hiding this comment.
Please first push only the test and let the CI run so that we see that the test reproduces the bug. Then add the commit that updates the submodule containing the fix
9b16672 to
fe69ae8
Compare
|
@dcorral I noticed the fix is for both inbound and outbound HTLCs, but the test is restarting only one node. Could you also add a node2 restart (before the force-close, mirroring the node1 one) so the test exercises the inbound deserialization path too, not just outbound? That way the regression covers both write sites the fix touches. |
fe69ae8 to
220c8a8
Compare
|
Done, the payee is now restarted as well before the force close, so both the outbound and inbound pending-HTLC paths go through deserialization. Kept the PR test-only for now so CI shows the failure; the submodule update with the fix follows once the red run is on record. |
4855046 to
220c8a8
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #136 +/- ##
==========================================
+ Coverage 87.74% 87.78% +0.03%
==========================================
Files 13 13
Lines 7613 7613
==========================================
+ Hits 6680 6683 +3
+ Misses 933 930 -3
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Restarts the payer in
close_force_pending_htlcwhile the colored HTLC is still pending, so the channel state must round-trip through persistence with an HTLC in flight. Without RGB-Tools/rust-lightning#32 the node fails to come back up at this point, with it the test passes. The rust-lightning submodule is updated to include that fix.