FV: Actions after disabling Recovery Module
Closed this issue · 3 comments
Intention
After disabling the recovery module, it should not allow any recovery-based task at any point of the recovery cycle (Recovery initiation or finalization, updating guardian & threshold, etc.)
Description
The Recovery Module provides the resource to recover the Safe Wallet through Guardians set up by the Owner. However, an owner could remove the Recovery Module for personal/professional reasons (either when no Recovery was happening or during the Recovery Cycle). Once the Recovery Module is removed from the Safe Wallet, no recovery process making a change to the Safe Wallet should be possible, i.e. finalization of recovery call in the module.
To simplify:
If the recovery module is not enabled, then finalization of the recovery process should not be possible.
Expected Outcome
Rules to verify that finalization of the recovery is not possible in a Safe Wallet if the Recovery Module is disabled.
Shouldn't this be worded as:
If the recovery module is not enabled, then no recovery process is possible. In CVL, this would be pretty natural as (I don't remember syntax 100%):
require !safe.isModuleEnabled(...);
module.doRecoveryThing@withRevert(...);
assert lastReverted;
Added a To simplify
section in the initial issue message.
Based on the findings during the writing of FV, we found that only finalization is not possible, the rest is still possible even if the module is disabled. Thus, the original issue was edited to only ensure that finalization is not possible when the recovery module is disabled.