What if all critical functions require a 2 step process to execute. Eg. we have a withdrawAllFunds() which generates a request flag logged into the smart contract. If after 24 hours, the request isn’t challenged (more on this below), the caller can then execute the request and the funds are withdrawn.
Challenge:
In the interim after the initial request is made but before the 24 hour window has passed, some user suspects that an abuse of power has taken place. They place a deposit to kick off a dispute and either we have a simple majority vote on the topic or something more sophisticated like Kleros adjudication. Then we get the best of both worlds: a single address as the executive with an ambient “Congress” overseeing executive abuse.
