Harden clipboard + haptic#537
Conversation
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 2 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Want higher recall? High effort reviews run extra passes and find more bugs. A team admin can switch effort levels in the Cursor dashboard.
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit d15a4c9. Configure here.
|
I've reviewed PR #537 in a fresh worktree at OverviewThe PR does two unrelated things:
The architecture is sound: a singleton service, a thin Issues1. Catch blocks bypass
|
|
My review:
The security change is pretty theoretical, an app would have to try and steal the clipboard, and the user would have to agree to this with the iOS "allow this app to paste" dialog. That being said having the phrase in memory for a long time is not good
Haptics is fine |


Summary
Note
Medium Risk
Changes how recovery phrases hit the system clipboard—a security-sensitive path—with stronger iOS behavior but weaker Android timer fallback if the app stays backgrounded.
Overview
Adds time-limited clipboard handling when users copy a recovery phrase, plus haptic feedback while editing amounts on send, POS, and multisig propose flows.
Recovery phrase copy now goes through
SecureClipboardServiceandcopySensitiveTextWithToasterinstead of a plain clipboard write. Entries use a 30-second TTL; on iOS,AppDelegatebridgesapp.quantus/secure_clipboardtoUIPasteboardwithexpirationDateso the OS clears the pasteboard even if the app is backgrounded or killed. On other platforms, a DartTimerclears the clipboard on resume/foreground (weaker if the user stays away longer). Copy toasts in en and id now mention the auto-clear window.Amount entry on
input_amount_screen,pos_amount_screen, andpropose_amount_screentriggersHapticFeedback.mediumImpact()on each amount change.Reviewed by Cursor Bugbot for commit d15a4c9. Configure here.