Skip to content

Cursor/multi wallet account restore 9650 - #17

Merged
nghiacc merged 5 commits into
mainfrom
cursor/multi-wallet-account-restore-9650
Oct 20, 2026
Merged

nghiacc merged 5 commits into
mainfrom
cursor/multi-wallet-account-restore-9650

Conversation

@nghiacc

@nghiacc nghiacc commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

Wallet/Account restructuring and UX

cursoragent and others added 5 commits October 20, 2026 07:45
- Wallet = seed, identified by its seed id (requestPubKey at m/1'/0);
  server wallet ID is no longer shown in the UI
- Account = one derivation (path + coin + m-of-n). Network no longer
  splits an Account: same path/coin on different networks is one Account
- API: recover wallets by requestPubKeys so a Wallet (seed) ID recovers
  every Account under the seed
- Tokens live under each Account, hidden by default; which tokens show
  is an app-level Settings choice (persisted per app, not per Account)
- Restore: mnemonic recovers all Accounts (XEC 1899/899/145, DOGE 3,
  44'/48'), pin field accepts a Wallet (seed) ID
- Create/Join copy updated: Create makes a Wallet + first Account,
  Join adds a shared Account

Co-authored-by: nghiacc <nghiacc@yahoo.com>
Account rows on Home/Settings/Restore/Detail now show
'Account · m/44\'/1899\'/0\'' (plus m-of-n) instead of the legacy
server name 'Wallet <id>'. Wallet (seed) ids stay only at the
Wallet header via walletDisplayId.

Co-authored-by: nghiacc <nghiacc@yahoo.com>
Account rows are under their chain network (eCash / Doge). Each Account
is identified by its HD path only — no reusable address is shown.
Native coin (XEC / DOGE) and enabled tokens each render on their own
line under the Account. Aliases can come later.

Co-authored-by: nghiacc <nghiacc@yahoo.com>
Remove the leftover active-Account strip under total value and the
duplicate send/token tiles below. Home is now total cash value +
Wallet cards with nested network → Account → coin/token lines.

Co-authored-by: nghiacc <nghiacc@yahoo.com>
Wallets are multi-coin; Accounts list directly under each Wallet.
Coin still appears in the Account title (Account eCash m/44'/…).

Co-authored-by: nghiacc <nghiacc@yahoo.com>
@nghiacc
nghiacc merged commit 7f64d37 into main Oct 20, 2026
1 of 2 checks passed
@coderabbitai

coderabbitai Bot commented Oct 20, 2026

Copy link
Copy Markdown

Review in Change Stack →

Note

Currently processing new changes in this PR. This may take a few minutes, please wait...

⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: cfb0d333-abeb-42a1-b9c9-7122f9b0687d
📥 Commits

Reviewing files that changed from the base of the PR and between 93ee70e and 9e841e2.

📒 Files selected for processing: 14
  • apps/abcpay-api/src/routes.ts
  • apps/abcpay-api/src/services/wallet.service.ts
  • apps/abcpay-web/src/context/WalletContext.tsx
  • apps/abcpay-web/src/lib/api.ts
  • apps/abcpay-web/src/pages/CreateWalletPage.tsx
  • apps/abcpay-web/src/pages/HomePage.tsx
  • apps/abcpay-web/src/pages/JoinWalletPage.tsx
  • apps/abcpay-web/src/pages/RestorePage.tsx
  • apps/abcpay-web/src/pages/SettingsPage.tsx
  • apps/abcpay-web/src/pages/WalletDetailPage.tsx
  • packages/abcpay-wallet-core/src/__tests__/restore.test.ts
  • packages/abcpay-wallet-core/src/index.ts
  • packages/abcpay-wallet-core/src/restore.ts
  • packages/abcpay-wallet-core/src/token-visibility.ts
+----------------------------------------------+
| Plot twist: The bug was a feature all along. |
+----------------------------------------------+
  \
   \   (\__/)
       (•ㅅ•)
       /   づ
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

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.

2 participants