Ava Chow 35cae56a92
Merge bitcoin/bitcoin#31423: wallet: migration, avoid creating spendable wallet from a watch-only legacy wallet
b78990734621b8fe46c68a6e7edaf1fbd2f7d351 wallet: migration, avoid creating spendable wallet from a watch-only legacy wallet (furszy)
e86d71b749c08bde6002b9aa2baee824975a518a wallet: refactor, dedup wallet re-loading code (furszy)
1de423e0a08bbc63eed36c8772e9ef8b48e80fb8 wallet: introduce method to return all db created files (furszy)
d04f6a97ba9a55aa9455e1a805feeed4d630f59a refactor: remove sqlite dir path back-and-forth conversion (furszy)

Pull request description:

  Currently, the migration process creates a brand-new descriptor wallet with no
  connection to the user's legacy wallet when the legacy wallet lacks key material
  and contains only watch-only scripts. This behavior is not aligned with user
  expectations. If the legacy wallet contains only watch-only scripts, the migration
  process should only generate a watch-only wallet instead.

  TODO List:
  * Explain that `migratewallet` renames the watch-only after migration, and
  also that the wallet will not have keys enabled.

ACKs for top commit:
  achow101:
    ACK b78990734621b8fe46c68a6e7edaf1fbd2f7d351
  pablomartin4btc:
    tACK b78990734621b8fe46c68a6e7edaf1fbd2f7d351
  rkrux:
    LGTM ACK b78990734621b8fe46c68a6e7edaf1fbd2f7d351

Tree-SHA512: 1d583ac4b206fb477e9727daf4b5ad9c3e18b12d40e1ab4a61e8565da44c3d0327c892b51cf47b4894405d122e414cefb6b6366c357e02a74a7ca96e06762d83
2025-07-02 13:25:33 -07:00
..
2025-05-06 12:21:32 -07:00
2025-06-03 08:09:28 +01:00
2025-05-06 12:21:32 -07:00
2025-05-19 16:40:33 +01:00
2025-06-03 08:09:28 +01:00
2025-05-19 16:40:33 +01:00
2025-06-25 14:08:49 -07:00