Skip to content

Complete EVM wallet workbench and harden mobile signing paths - #4

Merged
0xfnzero merged 8 commits into
mainfrom
codex/evm-mobile-review-hardening
Aug 23, 2026
Merged

Complete EVM wallet workbench and harden mobile signing paths#4
0xfnzero merged 8 commits into
mainfrom
codex/evm-mobile-review-hardening

Conversation

@0xfnzero

Copy link
Copy Markdown
Owner

Summary

  • Add the EVM wallet workbench and mobile EVM chain/token registry integration across desktop, Flutter, Rust services, and the FRB bridge.
  • Harden Solana and EVM preview/confirm/submit flows with content-bound preview IDs, wallet/keystore matching, and stale preview rejection.
  • Improve mobile dApp behavior by returning rejection responses reliably and supporting EVM provider connect/disconnect plus account and chain change events.
  • Add defensive storage loading for mobile wallet metadata, custom EVM chains, and custom ERC-20 tokens.

Review fixes included

  • Validate EVM preview IDs before decrypting keystores on payment and dApp submit paths.
  • Ensure dApp rejection always resolves/rejects the WebView provider Promise instead of hanging after an expected UserRejected error.
  • Regenerate Flutter/Rust bridge bindings after the DTO changes.

Tests

  • ./apps/mobile/tool/generate_bridge.sh
  • cargo fmt --all -- --check
  • cargo check --workspace --all-features
  • cargo test --workspace --all-features
  • cargo clippy --workspace --all-targets --all-features -- -D warnings
  • dart format lib test
  • flutter analyze
  • flutter test --dart-define=FNZERO_MOBILE_DEV_BRIDGE=true
  • npm run lint
  • npm exec tsc -- --noEmit
  • npm run build
  • git diff --check

@0xfnzero
0xfnzero merged commit ce2f386 into main Aug 23, 2026
1 of 3 checks passed
@0xfnzero
0xfnzero deleted the codex/evm-mobile-review-hardening branch August 23, 2026 03:49
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