From 00a0be5fcd8157f145c63df44982b4f74960c815 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Mon, 17 Aug 2026 14:44:26 -0700 Subject: A snapshot only counts on its own network: the seed-keyed cache stops showing mainnet money under a mutinynet flag, and staging forgives the mainnet default it stamped before it knew better Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01JtaatFfAbx91Nh3xqKVqKz --- src/wallet.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/wallet.js') diff --git a/src/wallet.js b/src/wallet.js index cdae1ff..cce0a45 100644 --- a/src/wallet.js +++ b/src/wallet.js @@ -1871,7 +1871,12 @@ export class Wallet { // cache yet — fall back to the xpub mirror so it shows instantly. if (!raw && !this.watchOnly) raw = localStorage.getItem(this._xpubCacheKey()); if (!raw) return false; - this._applySnapshot(JSON.parse(raw)); + const snap = JSON.parse(raw); + // The seed-keyed cache slot is shared across networks (the key hashes + // only the seed), so a wallet switched to mutinynet would restore — and + // show — its mainnet balance. A snapshot only counts on its own network. + if (snap.netName && snap.netName !== this.netName) return false; + this._applySnapshot(snap); this.emit(); return true; } catch { -- cgit v1.2.3