Management Model
Dephi's permission model ensures users maintain full sovereignty over their assets while enabling efficient protocol operation.
Role Hierarchy
Three distinct roles with clearly separated permissions. Users always have ultimate control over their positions.
User
Manager
Admin
User
- Select and change manager
- Set risk tier preference
- Enable/disable Guardian 2FA
- Withdraw at any time
- Emergency exit option
Manager
- Rebalance positions within bounds
- Execute approved strategies
- Respond to market conditions
- Cannot access user funds directly
- Cannot withdraw for users
Admin
- Adjust protocol fees (capped)
- Collect accrued fees
- Cannot access user deposits
- Cannot upgrade contracts
- Cannot pause withdrawals
User Sovereignty
Users are never locked in. All control remains with the position owner.
Manager Selection
Choose which strategy manager handles your position. You can change managers at any time without penalty.
Risk Tier Control
Adjust your risk preference (Conservative, Optimal, Aggressive) whenever you want. Changes take effect immediately.
Exit Rights
Withdraw your funds at any time. No lock-ups, no vesting periods, no admin approval required.
Guardian Control
Enable, disable, or change your Guardian 2FA settings. Requires current guardian signature to change.
Manager Boundaries
Managers operate within strict boundaries enforced by smart contracts.
Error-bounded actions
Each action has limits preventing cascading failures. Max 5% of position per rebalance.
Approved protocols only
Managers can only interact with whitelisted protocols (Spark, Aave, Curve, etc.)
No direct asset access
Managers route funds through contracts, never hold user assets directly.
Transparent execution
All manager actions are recorded on-chain with full audit trail.
Reversible decisions
Users can override manager decisions by withdrawing or changing managers.
Admin Limitations
Admin permissions are intentionally minimal. This is by design.
Cannot Touch Assets
No function exists for admin to withdraw or transfer user funds.
Cannot Upgrade
Contracts are immutable. No proxy patterns, no upgrade paths.
Cannot Pause
No emergency pause. Users can always withdraw their funds.
Can Collect Fees
Only permission: collect accrued protocol fees from yield.
User Control Functions
// Change manager preference
function setManager(uint256 tokenId, address manager) external;
// Update risk tier
function setRiskTier(uint256 tokenId, uint8 newTier) external;
// Enable Guardian 2FA
function setGuardian(
uint256 tokenId,
address guardian,
bytes calldata currentGuardianSig // Required if changing
) external;
// Disable Guardian 2FA
function removeGuardian(
uint256 tokenId,
bytes calldata guardianSig
) external;