Gearbox V2
Architecture
Role model

Role model

Roles

ACL contract keeps global roles for whole Gearbox Protocol. There are 3 basic roles in the system:

RoleResponsibility
ConfiguratorRole which has the most powerful roles for configuring system parameters
PausableAdminRole can pause contracts
UnPausableAdminRole can unpause contracts

Configurator role

Configurator is onwer of ACL contract. This code snippet shows how to get the current adddress:

 address configurator = ACL(addressProvider.getACL()).owner();

In current deployment, Configurator is managed by Technical Multisig, in the future, Gearbox will use Compound Bravo Governance.

How to test your contracts

In many cases, developer needs to change system parameters:

 address configurator = ACL(addressProvider.getACL()).owner();
 evm.prank(configurator);