The help tells me I should unlock my encrypted wallet:

```
> help migratewallet

...
Requires wallet passphrase to be set with walletpassphrase call if wallet is encrypted.
```

But when I do so and attempt to migrate the wallet I'm told that I've entered my password for needlessly:

```
> migratewallet

Error: migratewallet on encrypted wallets is currently unsupported.
```

<!-- What version of Bitcoin Core are you using, where did you get it (website, self-compiled, etc)? -->

v24.0.1

if (IsValidDestination(dest)) {
                SetAddressBookWithDB(batch, dest, label, "receive");
            }
        }
    }
    return true;
}
/**
 * Scan active chain for relevant transactions after importing keys. This should
 * be called whenever new keys are added to th, with the oldest key
 * creation time.
 *
 * @return Earliest timestamp that could be successfully scanned from. Timestamp
 * returned will be higher than startTime if relevant blocks could not be read.
 */
int64_t CWalletRescanFromTime(int64_t startTime, const WalletRescanReserver& reserver, bool update)
{
    // F
    // h
    // t
    int start_height = 0;
    uint256 start_block;
    bool start = chain().findFirstBlockWithTimeAndHeight(startTime - TIMESTAMP_WINDOW, 0, FoundBlock().hash(start_block).height(start_height));
    WalletLogPrintf("%s Rescanning last %i blocks\n", __func__, start ? WITH_LOCK(cs_, return GetLastBlockHeight()) - start_height + 1  0);
    if (start) {
        // T
        ScanResult result = ScanForWalletTransactions(start_block, start_height, /*ma reserver, /*fUte, /*sae);
        if (result.status == ScanResultFAILURE) {
            int64_t time_max;
            CHECK_NONFATAL(chain().findBlock(result.last_failed_block, FoundBlock().maxTime(time_max)));