Pro Vault Maintenance
NOTE: most maintenance actions are not yet available on the Arrakis Pro UI. But they will be soon. For now if urgent maintenance actions are needed follow this guide.
updateVaultInfo
On the ArraksStandardManager every vault owner has the ability to adjust important management parameters for their vault.
-
View call
manager.vaultInfo(address vault)to see current vault info. -
from vault
owneracct -> callmanager.updateVaultInfo(struct memory SetupParams)see here where the struct has these fields:
struct SetupParams {
address vault;
IOracleWrapper oracle;
uint24 maxDeviation;
uint256 cooldownPeriod;
address executor;
address stratAnnouncer;
uint24 maxSlippagePIPS;
}
edit the fields you want to change and copy over the fields from Step 1 that you want to keep the same.
vaultthat is the address of your vault. call will fail if msg.sender is not not owner of this vaultoracleis a smart contract which acts as onchain oracle to police executor actions. Read more about Arrakis Price OraclesmaxDeviationthis is max deviation underlying module spot market can haave from oracle price (in pips)cooldownPeriodshortest amount of seconds between any successful management actions on the vaultexecutoraccount which can call management functions for this vault. Pro vaults have0x420966bCf2A0351F26048cD07076627Cde4f79acas executor (the Arrakis Pro Backend)stratAnnouncercurrently unused for now, (in future, account with ability to set vault offchain strategy config via onchain call)maxSlippagePIPSmaximum slippage from oracle price on management swap actions (in pips)
The ArrakisStandardManager is deployed to address 0x2e6E879648293e939aA68bA4c6c129A1Be733bDA on all networks. See mainnet contract onchain: here
transfer vault
nevertheless you may want to migrate your Arrakis Pro vault to a new owner account. This is as simple as transferring the NFT to the target recipient which can usually be done on any wallet UI directly.
manual steps:
Find your token id of interest and call transferFrom(address from, address to, uint256 tokenId) on the PrivateVaultNFT contract.
- The
fromis currentownerof tokenId and also the acct you are calling from - The
tois your desired recipient of vault control - The
tokenIdis the tokenId you found. It is also thekeccak256(vaultAddress)
Arrakis PrivateVaultNFT contract is deployed to address 0x44A801e7E2E073bd8bcE4bCCf653239Fa156B762 on all networks. See mainnet contract onchain: here
whitelistModules
Every vault owner has the ability to call whitelistModules(address[] calldata beacons, bytes[] calldata datas) see here
with valid module beacon addresses in the beacons argument and valid module initialization payloads in the datas argument.
Because these may not be simple calls to construct correctly, we recommend reaching out to Arrakis engineers if you want to whitelist new modules.