Rebuild wallet doesn't scan Change paths
It seems to only scan the main path, which misses all the UTXOs sitting on the Change path. This could be a lot (including empty ones), so need to scan until finding a block of empty addresses like the main path does.
Same thing happens after deleting and importing the seed phrase, it doesn't pick up on UTXOs sitting on the Change path. I imagine it's the same mechanism and one fix will sort both.
This is particularly a problem if the same seed is used on multiple devices (e.g. on mobile & web, as I do with my testing wallet) - because it means the wallets get out of sync and can't reconverge as one wallet is watching change addresses that the other isn't.