Closed sherlock-admin3 closed 1 month ago
Executing global shutdown (which btw is out of scope) will leave the whole system in a status of no recovery (e.g. the Vat, the most important contract). Redeploying is necessary. So this issue is wrong. Even if you could argue that the cage could be called at local level for the Splitter it is still a design decision. It is not a bug, much less a High severity one.
Mansa11
High
System cannot be turned back on after shutdown Period
Description
In
Splitter.sol
, There is a variablelive
which is set to1
upon deployment and to0
when the contract iscaged
during global shutdown. The shutdown period is meant to be activated whenever there are discrepancies in the protocol. However, the current implementation does not make provision for activating the system back on after the issue might have been mitigatedhttps://github.com/sherlock-audit/2024-06-makerdao-endgame/blob/main/dss-flappers/src/Splitter.sol#L122-L126
https://github.com/sherlock-audit/2024-06-makerdao-endgame/blob/main/dss-flappers/src/Splitter.sol#L98-L120
Impact
Contract is stuck and cannot be made
live
anymore due to no provision for the implementation. Furthermore, the main core functionality of theSplitter
contract which isKick
will no longer be callable, as it can only be called whenlive == 1
POC
Recommendation
Implement a function that allows resetting the
live
back to initial state after the system must have cooled down.