Skip to content

fix(wallet-address): display receive address in EIP-55 checksummed form#696

Merged
TaprootFreak merged 3 commits into
stagingfrom
feature/wallet-address-checksum-display
Jun 5, 2026
Merged

fix(wallet-address): display receive address in EIP-55 checksummed form#696
TaprootFreak merged 3 commits into
stagingfrom
feature/wallet-address-checksum-display

Conversation

@TaprootFreak
Copy link
Copy Markdown
Contributor

Problem

The Wallet-Adresse screen rendered the receive address in lowercase (0x127d4a7e…ae8aa2) in both the QR code and the address text. SettingsWalletAddressPage used AppStore.primaryAddress, which returns the lowercase .hex form.

The canonical, verifiable representation of an Ethereum address is its EIP-55 checksummed form (mixed case). Showing lowercase is incorrect for a receive address users are meant to verify.

Fix

  • In settings_wallet_address_page.dart, convert the address to its checksummed form via EthereumAddress.fromHex(...).hexEip55 before passing it to the QR code and the displayed text.
  • Scoped to this screen onlyAppStore.primaryAddress and all other consumers are untouched (per request: wallet-address screen fix only).

Tests

  • Added a page test asserting the rendered QRAddressWidget receives the checksummed address in both its subtitle (text) and uri (QR), given a lowercase mock.
  • flutter analyze clean; page + QR-widget tests green.
  • Golden settings_wallet_address_page_default regenerated via golden-regenerate.yaml (address text now mixed-case).

Test plan

  • Open Wallet-Adresse screen → address shown checksummed, QR encodes checksummed, copy copies checksummed.
  • Visual Regression green against the regenerated baseline.

TaprootFreak and others added 3 commits June 5, 2026 08:57
…d form

The wallet address screen rendered AppStore.primaryAddress, which is the
lowercase `.hex` form, in both the QR code and the address text. Show the
EIP-55 checksummed form instead — the canonical representation that lets the
user verify the address by its checksum. Scoped to this screen; AppStore and
other consumers are unchanged.
The regenerate run also rewrote home_page_loaded.png with a sub-pixel diff
unrelated to this change. Revert it to the staging baseline so this PR touches
only the wallet-address golden.
@TaprootFreak TaprootFreak marked this pull request as ready for review June 5, 2026 07:04
@TaprootFreak TaprootFreak merged commit 84ccb07 into staging Jun 5, 2026
12 checks passed
@TaprootFreak TaprootFreak deleted the feature/wallet-address-checksum-display branch June 5, 2026 07:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant