Conversation
j0ntz
force-pushed
the
jon/big-utxo-wallet-card
branch
from
September 8, 2026 23:34
a9cd60b to
5393630
Compare
j0ntz
marked this pull request as ready for review
September 8, 2026 23:34
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 5393630. Configure here.
j0ntz
force-pushed
the
jon/big-utxo-wallet-card
branch
from
September 8, 2026 23:50
5393630 to
0326bb9
Compare
j0ntz
force-pushed
the
jon/big-utxo-wallet-card
branch
from
September 15, 2026 23:06
0326bb9 to
acd02f9
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Description
Large UTXO wallets sync slowly and can display a stale, too-high balance, which sends users to support twice: first for "insufficient funds" on a send, then for "you stole my funds" after they are told to resync. This adds a warning card to the wallet details scene for Bitcoin-family wallets with a long transaction history, explaining the slow sync, warning that the balance can read high until it finishes, and linking to the support article that covers the resync.
Asana: https://app.asana.com/0/1215088146871429/1216111164285203
Design choices, all recorded on the task:
edge-currency-plugins'UtxoEngineshipsotherMethods: {}, and core'sgetAddressesreturns only fresh receive addresses), so the transaction count fromEdgeCurrencyWallet.getNumTransactionsstands in for both. Support's two sampled wallets were 164 tx / 162 addresses and 310 tx / 293 addresses, so the two measures track each other and both wallets trigger on transaction count alone.ZcashMigrationCardis the precedent for a permanent conditional card.AlertCardUi4withtype="warning", the same component and treatment as the sync-status card immediately above it, rather than a custom informational styling.UTXO_PLUGIN_IDSmirrorsedge-currency-plugins'src/common/utxobased/infodirectory.bityProvider.tskeeps its own narrower copy of that list; deduplicating it would pull an unrelated payment provider and seven pre-existing lint errors into this diff, so it is left alone.The learn-more URL is overridable per white-label build through
config.largeUtxoWalletLearnMoreUrl, the same shape aszcashMigrationLearnMoreUrl.CHANGELOG
Does this branch warrant an entry to the CHANGELOG?
Dependencies
none
Requirements
If you have made any visual changes to the GUI. Make sure you have:
Note
Low Risk
Informational UI and async transaction counting on the wallet scene only; no changes to sends, balances, or sync logic.
Overview
Adds a non-dismissible warning card on the wallet transaction scene for mainnet Bitcoin-family wallets whose transaction count is at least 100, explaining that long histories sync slowly, balances can look too high until scanning finishes, and sends may fail with insufficient funds until then.
The card uses the existing
AlertCardUi4warning styling (below the sync card) with copy in locales and a Learn More link to a support article, overridable viaconfig.largeUtxoWalletLearnMoreUrl. Visibility is not tied to an active sync, since fully “synced” wallets can still show stale balances.TransactionListToploads the count withgetNumTransactions, re-evaluates whenbalanceMapchanges during sync, and only shows the card when the count belongs to the current wallet id (avoids flashing after wallet switches). Shared helpersUTXO_PLUGIN_IDS,isUtxoPluginId, andLARGE_UTXO_WALLET_TX_COUNTlive in wallet constants; a snapshot test coversLargeUtxoWalletCard.Reviewed by Cursor Bugbot for commit acd02f9. Bugbot is set up for automated code reviews on this repo. Configure here.
Test evidence
acd02f9Add slow-sync card for large UTXO wallets
🪓 lowered LARGE_UTXO_WALLET_TX_COUNT from 100 to 20 locally so a real 28-transaction DASH wallet crosses the real threshold comparison; reverted before commit.
under threshold no card
🪓 card on utxo wallet
🪓 no card on non utxo wallet
🪓 learn more opens article
🪓 no stale card after wallet switch
🪓 warning card restyle