Contracts
1. StrategBlockRegistry
Purpose: Manages the registration and removal of strateg blocks.
Key Functions: Maintain a mapping of block addresses to metadata, add / remove blocks from the allowed block list.
2. StrategAssetBuffer
Purpose: Provides a mutualized buffer for strategy vaults.
Key Functions: Allow vault to deposit or withdraw assets into the buffer. This contract is used to store assets which are not used in the strategy to be more gas efficient on user deposit and withdraw
3. StrategUserInteractions
Purpose: Provides an interface for users to interact with the protocol.
Key Functions: Implement ERC2771, permit and permit2 to have en easier usage on the protocol
4. StrategVaultFactory
Purpose: Responsible for creating new vaults and store their configurations.
Key Functions: Deploy vault contracts, upgrade vault implementations, set protocol fees, and retrieve information about owned vaults.
5. StrategVault
Purpose: Implements the ERC4624 Strateg vault.
Key Functions: Manage ERC20 tokens, integrate with ERC4626 for vault operations, handle reentrancy protection, and interact with strategy and harvest blocks.
6. StrategERC3525
Purpose: Implements the ERC3525 which define vault owner and the rewards distribution.
Key Functions: Manage the authorizarion on vault configuration change and distribute vault creator fees.
7. StrategOperatorProxy
Purpose: Serves as a proxy for executing operations on behalf of the operator.
Key Functions: Perform actions like vault harvesting, rebalancing, withdrawal rebalancing amd stopping strategy. Access is restricted to users with the OPERATOR_ROLE.
8. StrategOperatorDataAggregator
Purpose: Contract which provide aggregated data of vaults.
Key Functions: Allow operator to retrieve data to operate vaults
Last updated