Core Operations
Error Types
error InsufficientAssets();
error VaultNotListed();
error RequestNotFound();
error InvalidController();
error MinimumBalanceNotMet();
error InvalidSuperformId();
error InvalidRecoveryAddress();
error InvalidAmount();
error TotalAmountMismatch();
error SharesLocked();
error VaultShutdown();
error Unauthorized();
error ExceedsMaxDeposit();
error ExceedsMaxMint();Events
event Invest(uint256 amount);
event Divest(uint256 amount);
event SettleXChainInvest(uint256 indexed superformId, uint256 assets);
event SettleXChainDivest(uint256 assets);
event ProcessRedeemRequest(address indexed controller, uint256 shares);
event FulfillRedeemRequest(address indexed controller, uint256 shares, uint256 assets);
event RequestSettled(bytes32 indexed key, address indexed controller, uint256 settledAmount);Constants
Deposit Operations
Atomic Deposit Flow
Key Features:
Atomic execution via
multicallImmediate request fulfillment
Direct share minting
No asynchronous operations
Security Considerations:
Emergency shutdown check
Share lock enforcement
Balance verification
Alternative Deposit Methods
Investment Operations
Direct Investment (Same Chain)
Cross-Chain Investment
Multi-Vault Investment
Gas Management
Withdrawal Operations
Request Phase
Processing Phase
Settlement Phase
Balance Verification
Failure Mode Analysis
Bridge Failures
Timeout scenarios
Asset recovery process
State reconciliation
Oracle Failures
Price feed delays
Stale price handling
Fallback mechanisms
Gas-Related Failures
Cross-chain operation out of gas
Batch operation partial success
Recovery procedures
Cross-Chain Settlement
Investment Settlement
Divestment Settlement
Refund Handling
NFT Position Safety
Security Considerations
Critical Invariants
Total assets = idle assets + allocated assets
Pending requests must be processed in order
Settlement amounts must meet minimum requirements
Fee Management
Access Control
State Protection
Emergency Controls
Last updated