Skip to content

Add wallet vault password flow#1039

Draft
beeman wants to merge 1 commit into
mainfrom
beeman/wallet-vault-password-flow
Draft

Add wallet vault password flow#1039
beeman wants to merge 1 commit into
mainfrom
beeman/wallet-vault-password-flow

Conversation

@beeman

@beeman beeman commented May 7, 2026

Copy link
Copy Markdown
Member

Summary

  • Add vault password setup, lock/unlock UI, security settings, plaintext migration, and a hash-aware unlock guard.
  • Encrypt wallet mnemonics and account secret keys with OWS-shaped AES-GCM envelopes and support default vault, PIN, and dev-unsafe wallet protection modes.
  • Route onboarding, wallet protection settings, request approvals, and background signing through the unlocked vault runtime while keeping public connect metadata available.

Test Plan

  • bun run test
  • bun check-types
  • bun lint
  • Headless route smoke against http://localhost:5173 for onboarding import, encrypted IndexedDB rows, security lock, locked portfolio redirect, and unlock return.

Notes

  • Draft PR for review because extension request-popup QA remains the main manual verification gap.

@coderabbitai

coderabbitai Bot commented May 7, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 335c4be4-a544-4cbd-abe8-0676645c16a1

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch beeman/wallet-vault-password-flow

Tip

💬 Introducing Slack Agent: The best way for teams to turn conversations into code.

Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.

  • Generate code and open pull requests
  • Plan features and break down work
  • Investigate incidents and troubleshoot customer tickets together
  • Automate recurring tasks and respond to alerts with triggers
  • Summarize progress and report instantly

Built for teams:

  • Shared memory across your entire org—no repeating context
  • Per-thread sandboxes to safely plan and execute work
  • Governance built-in—scoped access, auditability, and budget controls

One agent for your entire SDLC. Right inside Slack.

👉 Get started


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 and usage tips.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented May 7, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
samui-wallet-web 8b0858f Commit Preview URL

Branch Preview URL
May 14 2026, 12:30 PM

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented May 7, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
samui-wallet-api 8b0858f Commit Preview URL

Branch Preview URL
May 14 2026, 12:29 PM

@beeman
beeman force-pushed the beeman/wallet-vault-password-flow branch 2 times, most recently from 6afc724 to 7193dd3 Compare May 7, 2026 11:37
@bundlemon

bundlemon Bot commented May 7, 2026

Copy link
Copy Markdown

BundleMon

Files added (4)
Status Path Size Limits
apps/extension/.output/chrome-mv3/chunks/unlo
ck-(hash).js
+1.72KB -
apps/web/dist/assets/unlock-(hash).js
+1.71KB -
apps/extension/.output/chrome-mv3/chunks/opti
ons-(hash).js
+394B -
apps/web/dist/assets/options-(hash).js
+392B -
Files removed (2)
Status Path Size Limits
apps/web/dist/assets/toggle-(hash).js
-27.61KB -
apps/extension/.output/chrome-mv3/chunks/togg
le-(hash).js
-27.59KB -
Files updated (9)
Status Path Size Limits
apps/extension/.output/chrome-mv3/chunks/clie
nt-(hash).js
277.16KB (+1.43KB +0.52%) -
apps/web/dist/assets/index-(hash).js
301.93KB (+1.39KB +0.46%) -
apps/extension/.output/chrome-mv3/chunks/sett
ings-(hash).js
27.2KB (+1.12KB +4.29%) -
apps/web/dist/assets/settings-(hash).js
27.19KB (+1.11KB +4.26%) -
apps/web/dist/assets/onboarding-(hash).js
6.82KB (+1014B +16.98%) -
apps/extension/.output/chrome-mv3/chunks/onbo
arding-(hash).js
6.82KB (+1007B +16.86%) -
apps/extension/.output/chrome-mv3/chunks/use-
(hash).js
243B (+17B +7.52%) -
apps/web/dist/assets/use-(hash).js
243B (+15B +6.58%) -
apps/web/dist/assets/index.browser-(hash).js
836B (-3.83KB -82.43%) -
Unchanged files (64)
Status Path Size Limits
apps/web/dist/assets/combobox-(hash).js
45.75KB -
apps/extension/.output/chrome-mv3/chunks/comb
obox-(hash).js
45.74KB -
apps/extension/.output/chrome-mv3/chunks/form
-(hash).js
13.17KB -
apps/web/dist/assets/form-(hash).js
13.16KB -
apps/extension/.output/chrome-mv3/chunks/inde
x.browser-(hash).js
9.13KB -
apps/web/dist/assets/select-(hash).js
8.55KB -
apps/extension/.output/chrome-mv3/chunks/sele
ct-(hash).js
8.54KB -
apps/extension/.output/chrome-mv3/chunks/crea
te-(hash).js
4.56KB -
apps/web/dist/assets/create-(hash).js
4.55KB -
apps/extension/.output/chrome-mv3/chunks/cons
tants-(hash).js
3.6KB -
apps/web/dist/assets/constants-(hash).js
3.6KB -
apps/extension/.output/chrome-mv3/chunks/useQ
uery-(hash).js
3.13KB -
apps/web/dist/assets/useQuery-(hash).js
3.12KB -
apps/extension/.output/chrome-mv3/chunks/requ
est-(hash).js
2.86KB -
apps/web/dist/assets/request-(hash).js
2.85KB -
apps/extension/.output/chrome-mv3/assets/vani
ty-(hash).js
2.79KB -
apps/web/dist/assets/vanity-(hash).js
2.79KB -
apps/web/dist/assets/portfolio-(hash).js
2.69KB -
apps/extension/.output/chrome-mv3/chunks/port
folio-(hash).js
2.69KB -
apps/extension/.output/chrome-mv3/chunks/send
-(hash).js
2.46KB -
apps/web/dist/assets/send-(hash).js
2.45KB -
apps/web/dist/assets/dropdown-(hash).js
2.16KB -
apps/extension/.output/chrome-mv3/chunks/drop
down-(hash).js
2.16KB -
apps/extension/.output/chrome-mv3/chunks/chec
kbox-(hash).js
1.89KB -
apps/web/dist/assets/checkbox-(hash).js
1.88KB -
apps/extension/.output/chrome-mv3/chunks/tool
s-(hash).js
1.84KB -
apps/web/dist/assets/tools-(hash).js
1.84KB -
apps/extension/.output/chrome-mv3/chunks/expl
orer-(hash).js
1.52KB -
apps/web/dist/assets/explorer-(hash).js
1.52KB -
apps/extension/.output/chrome-mv3/chunks/badg
e-(hash).js
770B -
apps/extension/.output/chrome-mv3/chunks/zod-
(hash).js
767B -
apps/web/dist/assets/badge-(hash).js
766B -
apps/web/dist/assets/zod-(hash).js
763B -
apps/web/dist/assets/standard-(hash).js
654B -
apps/extension/.output/chrome-mv3/chunks/stan
dard-(hash).js
652B -
apps/extension/.output/chrome-mv3/chunks/tabl
e-(hash).js
598B -
apps/web/dist/assets/table-(hash).js
593B -
apps/extension/.output/chrome-mv3/chunks/butt
on-(hash).js
577B -
apps/web/dist/assets/button-(hash).js
577B -
apps/extension/.output/chrome-mv3/chunks/book
mark-(hash).js
556B -
apps/web/dist/assets/bookmark-(hash).js
551B -
apps/extension/.output/chrome-mv3/chunks/ui-(
hash).js
526B -
apps/web/dist/assets/ui-(hash).js
522B -
apps/extension/.output/chrome-mv3/chunks/text
area-(hash).js
500B -
apps/web/dist/assets/textarea-(hash).js
494B -
apps/web/dist/assets/dev-(hash).js
277B -
apps/extension/.output/chrome-mv3/chunks/dev-
(hash).js
275B -
apps/extension/.output/chrome-mv3/chunks/side
panel-(hash).js
205B -
apps/extension/.output/chrome-mv3/chunks/popu
p-(hash).js
202B -
apps/extension/.output/chrome-mv3/chunks/inde
x-(hash).js
176B -
apps/extension/.output/chrome-mv3/chunks/form
at-(hash).js
166B -
apps/web/dist/assets/format-(hash).js
166B -
apps/extension/.output/chrome-mv3/chunks/sol-
(hash).js
150B -
apps/web/dist/assets/sol-(hash).js
150B -
apps/extension/.output/chrome-mv3/chunks/elli
psify-(hash).js
145B -
apps/web/dist/assets/ellipsify-(hash).js
145B -
apps/extension/.output/chrome-mv3/chunks/chev
ron-(hash).js
142B -
apps/extension/.output/chrome-mv3/chunks/stri
ngify-(hash).js
141B -
apps/web/dist/assets/chevron-(hash).js
140B -
apps/extension/.output/chrome-mv3/chunks/toas
t-(hash).js
138B -
apps/web/dist/assets/stringify-(hash).js
137B -
apps/web/dist/assets/toast-(hash).js
136B -
apps/extension/.output/chrome-mv3/chunks/netw
ork-(hash).js
121B -
apps/web/dist/assets/network-(hash).js
121B -

Total files change -47.77KB -5.21%

Groups updated (2)
Status Path Size Limits
apps/extension/.output/chrome-mv3/**/*-
.js
564.95KB (+6.01KB +1.08%) -
apps/web/dist/**/*-.js
590.14KB (+5.88KB +1.01%) -

Final result: ✅

View report in BundleMon website ➡️


Current branch size history | Target branch size history

@beeman
beeman force-pushed the beeman/wallet-vault-password-flow branch 16 times, most recently from 20dc37b to 126dc91 Compare May 11, 2026 17:03
@beeman
beeman force-pushed the beeman/wallet-vault-password-flow branch from 126dc91 to 8b0858f Compare May 14, 2026 12:25
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