-
Notifications
You must be signed in to change notification settings - Fork 152
feat: Collector revision-6 Upgrade. #82
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Collector revision-6 Upgrade. #82
Conversation
…ards compatiblity
…from initialize function. Deprecated fundsAdmin
| TreasuryReport memory treasuryReport; | ||
| bytes32 salt = collectorSalt; | ||
| address treasuryOwner = poolAdmin; | ||
| address aclManager; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this seems incomplete, you need to pass in the aclManager otherwise i guess deployment would revert.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Luigy-Lemon you can pass the aclManager from AaveV3PeripheryBatch contract as a function param to _deployAaveV3Treasury()
src/deployments/contracts/procedures/AaveV3TreasuryProcedure.sol
Outdated
Show resolved
Hide resolved
### Context The Collector contract (Revision 5) has the limitation of only allowing one address to call its functions, the `_fundsAdmin`, which currently is the Governance Executor contract. To enable the possibility of the [FinanceSteward](https://governance.aave.com/t/arfc-aave-finance-steward/17570) contract to be allowed to call the Collector alongside the Executor, it is recommended to use the `ACL_MANAGER` to manage its access control. A new role is going to be created named `FUNDS_ADMIN` ### Changelog Collector * Initialize function changes to only populate the `nextStreamId` * Created constructor to setup the `ACL_MANAGER` contract address as immutable variable * deprecated `_fundsAdmin` variable * removed getter and setter functions for `_fundsAdmin` and relevant errors and events. * introduced new function to check if an address has the `FUNDS_ADMIN` role named `IsFundsAdmin` * New tests for the Collector Co-authored-by: Luigy-Lemon <[email protected]> Co-authored-by: Harsh Pandey <[email protected]>
Context
The Collector contract (Revision 5) has the limitation of only allowing one address to call its functions, the
_fundsAdmin, which currently is the Governance Executor contract.To enable the possibility of the FinanceSteward contract to be allowed to call the Collector alongside the Executor, it is recommended to use the
ACL_MANAGERto manage its access control.A new role is going to be created named
FUNDS_ADMINPS: identified a problem in the
VersionedInitializablewhich due to the introduction of theinitializingvariable is not backwards compatible with the revision 5 version of the collector. Revision 6 will be launched with a modified version of ______gap length of 49 rather than 50.Changelog
Collector
nextStreamIdACL_MANAGERcontract address as immutable variable_fundsAdminvariable_fundsAdminand relevant errors and events.FUNDS_ADMINrole namedIsFundsAdminProposal
In order to upgrade the Collector:
VersionedInitializablewith ______gap set to 49 and with the currentACL_MANAGERaddress.grantRolewhich should be granted to the current_fundsAdmin, the Executor.