monitor: track only spendable HTLCs
This MR updates the monitor to track only HTLCs that we can claim, rather than all HTLCs. Previously, the monitor would wait for MAX_DEPTH
after the main output was spent before forgetting the channel. Now, it ensures that the main output, all first-level, and second-level HTLCs are fully swept and buried using MIN_DEPTH
, and the channel is explicitly forgotten by the node before the monitor stops tracking it
This change addresses the second part of #472 and completes the fix for the overall issue.