diff options
| author | Adam Soltys <[email protected]> | 2026-08-29 07:05:47 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-08-29 07:05:47 -0700 |
| commit | dd011c2c98033637829d83fc320ab4fdce4ede8c (patch) | |
| tree | 67be07e6e8480354bfd60589ca68dbcaeac0c409 /src/app.js | |
| parent | c4b566651d6afac2c48c88611094cfa71c16289b (diff) | |
| download | coinosv3-dd011c2c98033637829d83fc320ab4fdce4ede8c.tar.gz coinosv3-dd011c2c98033637829d83fc320ab4fdce4ede8c.zip | |
A round's output can no longer strand: every refresh asks the server to drop its unlock hash in the mailbox, and any device that finds such a breadcrumb with no matching action adopts the claim itself (input ids now read from the status response — the rescue needs no operator). History learns to tell the whole truth and nothing more: coins the server saw spent elsewhere get a folded row (skipping coins a known renewal consumed), renewals fold across devices on their unlock hash and appear only when they cost something, and a rescue records the fee the round actually took. The account page keeps its header icons when reached from an open wallet; the messages page folds the control/guestbook replay once per burst instead of painting every intermediate state — no more blinking messages from superseded ban lists or member counts crawling to their total, which now paints from last session's settled figure
Co-Authored-By: Claude Fable 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_019WboeoetMF3MTmgT7Ew8yi
Diffstat (limited to 'src/app.js')
| -rw-r--r-- | src/app.js | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -2440,7 +2440,10 @@ function accountsScreen() { return h( 'div', { class: 'col', style: 'gap:16px' }, - brandHeader(false), + // Reached from an open wallet this is a page, not a boot screen — the + // header icons (search, messages, settings, lock, avatar) stay put. + // Cold boot lands here with nothing loaded yet, and then they hide. + brandHeader(wallet.loaded), h('div', { class: 'card col' }, h('h3', {}, t('accounts')), h('div', { class: 'col', style: 'gap:0' }, |
