Use case - Adding time delay for upgrading a proxy.
Example - mETH protocol.
- mETH protocol uses timelock as the ProxyAdmin, means they don't deploy the seperate ProxyAdmin Contract.
Question :
But OZ V5.0 onwards, the transparent upgradeable proxy automatically deploys the proxy admin from within the constructor.
In this case, what should be the workaround? Assigning the timelockController as the admin for ProxyAdmin itself? Does it seem like a good way? Or are there any other route I should look into?
EDIT: Additional Query - If we already have an on-chain governance, which utilizes timelockController
, then does it make sense to include separate timelock admin for the proxy, knowing that the upgrades will go through governance? Which means, we can set the delay form governance timelock itself.