Strategies Release Deployment Procedure
Last updated
Was this helpful?
The following contracts will be deployed with the relevant release tags.
Maple Globals instance with updated logic.
Pool Manager Implementation instance with updated logic.
Pool Manager Initializer instance with updated compiler.
Pool Deployer instance with updated logic.
3 instances of the new contract Maple Strategy Factory. Each one will be used for Aave, Sky and Basic strategies.
New contract Maple Aave Strategy Initializer
New contract Maple Aave Strategy Implementation
New contract Maple Basic Strategy Initializer
New contract Maple Basic Strategy Implementation
New contract Maple Sky Strategy Initializer
New contract Maple Sky Strategy Implementation
The following transactions will be made to the PoolManagerFactory by the GOVERNOR
registerImplementation(400, <newly deployed PM>, <newly deployed PM Initializer>)
enableUpgradePath(300, 400, address(0))
enableUpgradePath(301, 400, address(0))
setDefaultVersion(400)
After that, on each Pool Manager that will be upgraded, the following function will be called:
upgrade(400, "") by PoolDelegate/SecurityAdmin
The list of pools that will have their pool manager upgraded are:
For each of the 3 instances of MapleStrategyFactory deployed, the following transactions will be made by GOVERNOR:
registerImplementation(100, <aave/basic/sky strategyImplementation>, <aave/basic/sky strategyInitializer>)
setDefaultVersion(100)
Following transactions will be made by the GOVERNOR or OPERATIONAL ADMIN
setImplementation(<newly deployed MapleGlobals implementation>)
setValidInstanceOf("STRATEGY_FACTORY", fixedTermLoanManagerFactory, true)
setValidInstanceOf("STRATEGY_FACTORY", openTermLoanManagerFactory, true)
setValidInstanceOf("STRATEGY_FACTORY", basicStrategyFactory, true)
setValidInstanceOf("STRATEGY_FACTORY", aaveStrategyFactory, true)
setValidInstanceOf("STRATEGY_FACTORY", skyStrategyFactory, true)
setValidInstanceOf("STRATEGY_VAULT", aToken(USDC), true)
setValidInstanceOf("STRATEGY_VAULT", aToken(USDT), true)
setValidInstanceOf("STRATEGY_VAULT", sUSDS, true)
setValidInstanceOf("PSM", usdsLitePSM, true)
For each PoolManager of syrupUSDC, syrupUSDT and High-Yield Secured that needs a given strategy added, the following function will be called by the OPERATIONAL ADMIN
addStrategy(<aave/basic/sky strategyFactory>, <aave/basic/sky initializer data>).
Set Key in Globals to allow Bot to manage strategy positions.
setValidInstanceOf("STRATEGY_MANAGER", <turnkey_bot_address>, true)
Last updated
Was this helpful?
Was this helpful?
* AQRU
* Cash Management USDC
* Blue Chip Secured Lending USDC
* High Yield Corporate Loan USDC
* High Yield Corporate Loan WETH
* High Yield Secured Lending - USDC
* Syrup USDC
* syrup USDT