- [x] Prefactors: #4008 - [x] Add service handler and event queue serialization logic: #4059 - [x] Add boilerplate to account for `KVStore` and `KVStoreSync` variants: #4059 - [x] Wire up background processor to drive general persistence #4059 - [x] Avoid re-persisting peer states if no changes happened (`needs_persist` flag everywhere) #4059 - [x] Persist in-line for very important calls that need to be persisted before we return #4059 - [x] Add roundtrip test coverage #4059 - [x] Allow to drop/remove historical peer states - [x] (optional) Look into parallizing persistence (e.g., we could persist batches of peer states at the same time, instead of persisting them sequentially) (first step done in #4059) - [x] `KVStore::remove` on peer state pruning #4084
lightning-liquidity: Pre-/Refactors to prepare for persistence #4008lightning-liquidity: Add serialization logic, persist service state #4059KVStoreandKVStoreSyncvariants:lightning-liquidity: Add serialization logic, persist service state #4059lightning-liquidity: Add serialization logic, persist service state #4059needs_persistflag everywhere)lightning-liquidity: Add serialization logic, persist service state #4059lightning-liquidity: Add serialization logic, persist service state #4059lightning-liquidity: Add serialization logic, persist service state #4059lightning-liquidity: Add serialization logic, persist service state #4059)KVStore::removeon peer state pruninglightning-liquidity: Eventually archive or remove persisted state #4084