aboutsummaryrefslogtreecommitdiffstats
path: root/tools/negentropy-sync-test.js
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2026-10-22 22:50:35 -0700
committerAdam Soltys <[email protected]>2026-10-22 22:50:35 -0700
commitd6bc9914368cd1ecfe26e57b5ab5d89e389a3f09 (patch)
tree8fea432eddfdcacaf1e69edd724907544dab1fee /tools/negentropy-sync-test.js
parentaae22c99f623c99c6dbe4f0e4cd792965cd1ae73 (diff)
downloadcoinosv3-d6bc9914368cd1ecfe26e57b5ab5d89e389a3f09.tar.gz
coinosv3-d6bc9914368cd1ecfe26e57b5ab5d89e389a3f09.zip
Spending settings paint their real numbers at once after a refresh: the manager is readable the moment its own init is done, and the server's fee table and tip are cached per server
Why: the coins were on screen at 350 ms (from the store), but the renewal price read "free", expiries "—" and exit costs the fallback for eleven seconds, because the pages read everything from `ark`, which is only set once the Nostr snapshot restore has also finished (Promise.all with mgr.init) — a gate that exists so the mailbox isn't replayed before the snapshot's cursor arrives, not for display. GetArkInfo itself answers in 0.4 s. `arkInited` is the same manager as soon as mgr.init() resolves (info, server key, tip, persisted coins); arkView() = ark || arkInited is what the custody card and the coins page read from. Renew (the one action the page runs on the manager directly) still waits for `ark`; exits go through connectArk, which waits anyway. For the first half second before init, btc-wallet-arkinfo:<server> in localStorage carries the last info and tip seen (tip advanced a block per ten minutes), so the first paint prices renewals right and shows days-left; a card with no info at all shows "…", never "free". Co-Authored-By: Claude Fable 5.1 <[email protected]>
Diffstat (limited to 'tools/negentropy-sync-test.js')
0 files changed, 0 insertions, 0 deletions