Conversation
|
|
||
| assertEq(IVeAngle(veANGLE).emergency_withdrawal(), true); | ||
| assertEq(IOwnable(proposalSender).owner(), govMultisig); | ||
| assertEq(IAccessControl(timelock).hasRole(PROPOSER_ROLE, onchainGovernorContract), false); |
There was a problem hiding this comment.
worth checking that the onchain governor ahas no rights anymore
There was a problem hiding this comment.
The timelock keeps its roles, but onchain governor no longer has anything (its sole role is proposer role on timelock and on the proposalSender).
Typically coreBorrow on Ethereum has two governors
There was a problem hiding this comment.
But timelock should have no role anymore
There was a problem hiding this comment.
I left it a role, but with sole proposer the multisig. It's easier if we want at some point to remove again the msig and put everything behind a timelock
| address govMultisig = 0xdC4e6DFe07EFCa50a197DF15D9200883eF4Eb1c8; | ||
|
|
||
| // Activate veANGLE emergency withdrawal | ||
| subCalls.push(SubCall(chainId, veANGLE, 0, abi.encodeWithSelector(IVeAngle.set_emergency_withdrawal.selector))); |
There was a problem hiding this comment.
worth doing this at the very end, just to be extra sure all are passing and not just this one
| bytes[] memory newCalldatas = new bytes[](calldatas.length + 1); | ||
| uint256[] memory newChainIds = new uint256[](chainIds2.length + 1); | ||
|
|
||
| // Need to switch proposalSender owner |
There was a problem hiding this comment.
why don't you batch it with the others?
There was a problem hiding this comment.
Because the _wrap function wraps for a proposal to be submitted to the Timelock when the admin of proposalSender is the governor contract itself
No description provided.