-
Notifications
You must be signed in to change notification settings - Fork 431
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: recovery proposal flow #2810
Conversation
Branch preview✅ Deploy successful! https://propose_recovery--walletweb.review-wallet-web.5afe.dev |
ESLint Summary View Full Report
Report generated by eslint-plus-action |
Coverage report
Show new covered files 🐣
Show files with reduced coverage 🔻
Test suite run success1172 tests passing in 164 suites. Report generated by 🧪jest coverage report action from 365c3da |
…to propose-recovery
ESLint Summary View Full Report
Report generated by eslint-plus-action |
@@ -45,7 +51,7 @@ const TxSimulationBlock = ({ transactions, disabled, gasLimit }: TxSimulationPro | |||
|
|||
simulateTransaction({ | |||
safe, | |||
executionOwner: wallet.address, | |||
executionOwner: isRecovery ? safe.owners[0].value : wallet.address, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe it's better to pass executionOwner
instead of isRecovery
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The "guardian" (wallet.address
) is unlikely an owner of the Safe so we have to explicitly pass one. The simulation would otherwise fail.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I meant the prop of TxSimulationBlock
. Instead of passing isRecovery
which is too specific, lift that logic to the caller and pass an optional executionOwner
instead, with a fallback to wallet.address
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I commited the suggestion directly to the epic branch in ba3b706.
What it solves
Resolves #2764
How this PR fixes it
This adds a new transaction flow for proposing a recovery attempt from a template "Recovery" section of the settings (later to be moved).
How to test it
Open the "Recovery" section of a Safe and observe a new area that allows for the enabling of recovery. Ensuring that the recovery has been enabled (possible via the same section), a "Propose recovery" button will take you through a new flow according to the designs.
Screenshots
Checklist