Deposits
- User Deposit: User calls
deposit()with assets - Immediate Minting: Shares minted synchronously at current PPS
- Asset Custody: Assets transferred to strategy for allocation
- Hook Execution: Strategist executes hooks to deploy capital
- PPS Updates: Validators provide updated PPS reflecting new positions
PPS Updates
- Off-Chain Calculation: Validators calculate PPS independently
- Signature Generation: Validators sign PPS with private keys
- Aggregation: Signatures collected and submitted to oracle
- Validation: Oracle verifies signatures and quorum
- Forwarding: Validated PPS forwarded to aggregator
- Strategy Checks: Aggregator runs dispersion/deviation checks
- Storage: PPS stored and made available for vault operations
Strategy Management
- Hook Approval: Strategist proposes new hook root
- Timelock Period: 15-minute delay configurable by governance for strategy hooks
- Execution: Hook root updated and new strategies enabled
- Guardian Oversight: Guardians can veto malicious updates
Redemptions
- Redeem Request: User calls
requestRedeem()with shares - Redeem Slippage: User optionally calls
setRedeemSlippage()(default 0.5%) - Share Escrow: Shares transferred to escrow contract
- Fulfillment: Strategist executes hooks to free up assets
- PPS Validation: Slippage protection against recorded request PPS
- Asset Claim: User calls
withdraw()to receive assets
PPS Validation
Flexibility and security is economically enforced by validators submitting PPS, supported by oracle infrastructure in Superform core. If interested in becoming a SuperVault validator, we recommend reading Become a Validator. Validators currently use a ECDSAPPSOracle which validates price updates using cryptographic signatures from the decentralized validator network.- Message Construction:
keccak256(abi.encodePacked(strategy, pps, ppsStdev, validatorSet, totalValidators, timestamp)) - Signature Recovery: Uses ECDSA to recover signer addresses
- Validator Verification: Checks signers against registered validator set
- Quorum Enforcement: Requires minimum number of signatures
- Duplicate Prevention: Prevents the same validator from signing twice