Previously, LDK was very conservative and kept channel monitors around ~forever or until the user manually decided to prune them. Recently it introduced the ChainMonitor::archive_fully_resolved_monitors method, which we now call periodically: every time a wallet sync succeeds, we check whether the latest archival height is 6 blocks in the past and
call archive_fully_resolved_monitors.
As this is not permanently persisted, we will always try to archive any pruned monitors when the first background sync after fresh initialization succeeds, ensuring we call it regularly also on
short-lived sessions, e.g, on mobile.
In the second and third commit, we fix previous omissions of sync_wallets: we now update the timestamps read by NodeStatus and also have it update the fee rate cache.
Fixes #300.
Previously, LDK was very conservative and kept channel monitors around ~forever or until the user manually decided to prune them. Recently it introduced the
ChainMonitor::archive_fully_resolved_monitors
method, which we now call periodically: every time a wallet sync succeeds, we check whether the latest archival height is 6 blocks in the past and callarchive_fully_resolved_monitors
.As this is not permanently persisted, we will always try to archive any pruned monitors when the first background sync after fresh initialization succeeds, ensuring we call it regularly also on short-lived sessions, e.g, on mobile.
In the second and third commit, we fix previous omissions of
sync_wallets
: we now update the timestamps read byNodeStatus
and also have it update the fee rate cache.