-snip-
Ran the reindex but sparrow still wouldn't connect. Also tried rescan also with no luck. I was able to get sparrow to connect again by deleting the sparrow wallet folder in Bitcoin core.
I tried to reproduce this by purposely corrupting wallet.dat inside sparrow folder and it indeed failed to connect.
Got this line in sparrow's log file:
...
JSON-RPC error: RPC error response: RpcError { code: -4, message: "Wallet file verification failed. \"M:\\AppData\\Bitcoin\\sparrow\\wallet.dat\" corrupt.
Try using the wallet tool bitcoin-wallet to salvage or restoring a backup.", data: None }
So, it appears that sparrow is reliant to a mirrored wallet.dat file in Bitcoin Core.
But that doesn't mean that your block index/chainstate wasn't corrupted by the abrupt shutdown as well (
it's fixed by reindex).
Overall, since the core issue is the frequent power loss, then a UPS with big backup battery is indeed the best solution.