From 31fea2d1e463424387828163bda9facc2fee8c0d Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Sun, 27 Sep 2026 15:07:31 -0700 Subject: Three fixes: orphaned pending coins settle with the server; a saved start screen no longer shadows a restored wallet; stop() no longer throws. Reconcile now asks the server about a 'pending' coin no live action or standing renewal order holds: spendable again, or gone. Thirty zap-sized coins another device had already spent counted in a balance for weeks. A nav saved by a page with no wallet (the start screen) was restored over a wallet that had since been saved to the device, painting the start page. messages.stop() referenced feedAt, which no longer exists, so the rest of the teardown never ran on an account switch. Co-Authored-By: Claude Fable 5.1 Claude-Session: https://claude.ai/code/session_01VhUKyXKtsJ67QAFfb7QR9D --- src/features/messages.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/features') diff --git a/src/features/messages.js b/src/features/messages.js index 59fb0a5..a55e735 100644 --- a/src/features/messages.js +++ b/src/features/messages.js @@ -8581,7 +8581,7 @@ export function messagesFeature(ctx) { for (const c of feedStates.values()) c.stopped = true; feedStates.clear(); threadCache.clear(); - follows = null; followsAt = 0; feed = null; feedAt = 0; relayLists = null; + follows = null; followsAt = 0; feed = null; relayLists = null; mutes = null; mutesAt = 0; stCache = null; stAt = 0; // the next account's state, not this one's if (profFlush) { clearTimeout(profFlush); flushProfiles(); } // this account's faces, written before the blob is dropped -- cgit v1.2.3