Add eCash.com (ECX) wallet metadata and guard missing currency entries - #6162
Open
j0ntz wants to merge 3 commits into
Open
Add eCash.com (ECX) wallet metadata and guard missing currency entries#6162j0ntz wants to merge 3 commits into
j0ntz wants to merge 3 commits into
Conversation
Convert the component to the React.FC form the lint rule expects.
UI tests need a stable selector for the create-wallet row of a specific asset, which the row's text does not provide.
2 tasks
Contributor
Author
j0ntz
marked this pull request as ready for review
August 18, 2026 00:30
j0ntz
force-pushed
the
jon/1217562074592399
branch
from
August 18, 2026 00:30
93fd345 to
61a927c
Compare
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
j0ntz
force-pushed
the
jon/1217562074592399
branch
from
August 18, 2026 00:38
61a927c to
e86b362
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high 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 e86b362. Configure here.
j0ntz
force-pushed
the
jon/1217562074592399
branch
from
August 18, 2026 00:45
e86b362 to
50792ab
Compare
ECX is the ecash.com hard fork of Bitcoin, shipped as the `ecashcom` plugin in edge-currency-plugins. It stays off in the core plugin list until the chain forks on 2026-08-22 and a Blockbook endpoint exists. Opening a wallet whose pluginId had no SPECIAL_CURRENCY_INFO entry threw in BuyCrypto, which the error boundary turned into the crash scene, so that lookup now falls back to an empty record.
j0ntz
force-pushed
the
jon/1217562074592399
branch
from
August 18, 2026 08:02
50792ab to
0e63fe2
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.



CHANGELOG
Does this branch warrant an entry to the CHANGELOG?
Dependencies
https://github.com/EdgeApp/edge-currency-plugins/pull/457 (for the `ecashcom` plugin itself; this PR is independently mergeable)Requirements
If you have made any visual changes to the GUI. Make sure you have:
Description
GUI side of the eCash.com (ECX) fork work. ECX is Layer Two Labs' hard fork of Bitcoin, shipped as the
ecashcomplugin in EdgeApp/edge-currency-plugins#457; the chain forks from Bitcoin on 2026-08-22 and the fork's own background is written up in that PR.Asana: https://app.asana.com/0/1215088146871429/1217562074592399
Three changes:
Two guards that are not ECX specific.
BuyCryptodestructuredSPECIAL_CURRENCY_INFO[pluginId]with no fallback, so any wallet whose pluginId has no entry in that table threwCannot read property 'highPrecisionSyncRatioDisplay' of undefinedthe moment its transaction list rendered, and the error boundary swapped the app for the crash scene. Every new currency plugin walks into this until someone remembers the table. Now it falls back to an empty record. Separately, long-pressing a transaction to share it built its link withsprintfon the explorer template without checking for the empty string that means "this chain has no explorer", so it shared an empty link; every other explorer consumer (ExplorerCard,RequestScene,AdvancedDetailsCard) already guards that case.An
ecashcomentry inSPECIAL_CURRENCY_INFO, matching the other UTXO coins (segwit, UTXO spend targets, key import), plus its wallet-name string.ecashcom: falsein the core plugin list, so the asset stays off until the chain actually forks and a Blockbook endpoint for it exists. Enabling it is a one-word flip at launch. There is no public ECX Blockbook server yet, so an enabled wallet could be created but never sync.A
testIDon the wallet-list create row comes along for the ride: UI tests had no stable selector for a specific asset's create row, since the row renders its currency code, name and label as one text node.Testing
tscclean,jestgreen (98 suites, 704 tests), eslint clean on the touched files.ecashcomplugin locally enabled and the dep linked viaupdot: ECX shows up as a creatable asset, the wallet creates, and opening it renders the wallet scene instead of the crash screen. Before the fix in (1), the same tap produced the "Oops!" crash scene every time.Note
Low Risk
Mostly constants, guards, and disabled plugin wiring; the BuyCrypto fallback is a small defensive fix with broad benefit for new currencies.
Overview
Adds eCash.com (ECX) wallet metadata ahead of the 2026-08-22 Bitcoin fork:
SPECIAL_CURRENCY_INFO, allowed-plugin lists, Sign Message menu coverage, default wallet name strings, andecashcom: falsein core plugins so the asset stays hidden until a Blockbook endpoint exists.Fixes a crash when opening any wallet whose
pluginIdis missing fromSPECIAL_CURRENCY_INFO:BuyCryptonow usesSPECIAL_CURRENCY_INFO[pluginId] ?? {}instead of destructuring undefined.Transaction share on long-press no longer opens a share sheet with an empty URL when
transactionExploreris an empty string.Adds a
testIDon wallet-list create rows (walletListCreateRow_${pluginId}) for UI tests.Reviewed by Cursor Bugbot for commit 0e63fe2. Bugbot is set up for automated code reviews on this repo. Configure here.