Tags: revault/revaultd
Tags
v0.4.0: Babidi Somniosidae New requirements: - Changes bitcoind minimum supported version to 22.0 Features: - Bitcoind version is now checked at startup - The bitcoind poller rescans from the latest tip, so we won't miss any historical vault (this holds for reorgs too) - We now exchange signatures with the watchtowers in a single batch - A `participant_type` field was added to the `getinfo` result - The `hex` field of the `listpresignedtxs` result was removed - Add `cpfp_amount` and `miner_fee` to `gethistory` events - Add `status`, `cpfp_amount`, `cpfp_index` and `change_index` to `getspendtx` and `listspendtxs` entries Fixes: - Avoid a race condition between the signature fetcher thread and the bitcoind poller thread upon reorg
v0.3: Huffle Puffer Third alpha release of revaultd for the third demo of Revault. Notable changes include . Features (protocol): - Cosigning servers are now optional. If none are configured, we won't try to poll them. - We now support watchtowers. If some watchtowers are configured, we'll exchange the revocation signatures with them. Features (API): - A new `help` command was added based on `doc/API.md`. - A new `descriptors` field was added to the response of `getinfo`. - A new `getserverstatus` RPC command was added - `revaultd` was made a Rust library. - We now check the size of the Spend transaction as serialized in base64 instead of hex in `getspendtx`. - We categorized JSONRPC errors into groups and assigned a specific error code to each group. - The vault information returned in several commands now contain new `funded_at`, `secured_at`, `delegated_at`, `moved_at` fields. - A new `gethistory` command was added. Features (misc): - If configured with the CPFP BIP32 seed, we now automatically CPFP the Unvault and Spend transaction for which priority was set and feerate is lower than the next block feerate by more than 4sat/vbyte. Fixes (protocol): - We now exchange the Spend transaction with the coordinator serialized in base64. - We don't create a single connection per `sig` message sent to the coordinator anymore. Fixes (misc): - We don't crash anymore on unexpected Unvault outputs. - We are now more robust to state races (see #145). - We now require xpubs specified in the configuration to be on the right network.
0.2: Saruman Sardinops This is a second alpha release, containing a (larger) subset of Revault features in order to be able to test them in a demo deployment. New features: - We now have a response to all protocol messages which allows for much better error handling. - We can now fetch existing signatures from the Cosigning Server. This makes the manager signing process robust against connection interruption. - We now use descriptors in the configuration instead of raw xpubs. - `listspendtxs` now takes an optional `status` argument. - A new `gethistory` RPC call. - We now have a basic Emergency support, along with a `emergency` RPC call. - The `cpfp_index` and `change_index` fields were added to `listspendtxs` output. - The Spend transaction is now returned by `listonchaintransactions`. - We now (conservatively) check the Spend transaction size at creation time to avoid a situation were it would be unannounceable to the Coordinator due to transport limits. - `getinfo` now returns the `managers_threshold`. - `revocationtxs` and `unvaulttxs` now refuse PSBTs containing public keys that are not part of the descriptors. - We now check the coordinator isn't sending us signatures for public keys that aren't part of our descriptors. Fixes: - Increase the SQLite busy timeout to 1 minute also for write access - Message serialization ambiguity was fixed, which made the connection to the Coordinator reliable. - Unvault txs retrieval from DB was fixed. The SQL query for retrieving the presigned unvaults was wrong, which caused some issues if the daemon was restarted while the tx was in the state of "unvaulting". - The `bitcoind` poller logic was flaky and sometimes brittle. Many fixes and refactorings made it much more robust, including in very edgy cases such as large and specific reorgs simulated by the functional tests. - In daemon mode, we now open the log file in append mode to avoid overwriting it.