Optimus Protocol Architecture
Program Structure
The Optimus protocol is organized into several key components:
Core Components
lib.rs: Main program entry point and instruction routererror.rs: Custom error definitions for the protocolstate.rs: Program state management and account structures
Instruction Modules
The protocol's functionality is divided into three main instruction categories:
Admin Instructions
Located in instructions/admin/
- Protocol configuration
- Emergency controls
- System parameter management
Creator Instructions
Located in instructions/creator/
- Meme coin launch management
- Token configuration
- Initial liquidity setup
User Instructions
Located in instructions/user/
- Trading operations
- Vault interactions
- Referral system interactions
State Management
The protocol uses several key state accounts:
-
Global State
- Protocol-wide configuration
- System parameters
- Emergency controls
-
Bonding Curve State
- Price curve parameters
- Liquidity pool information
- Trading statistics
-
Vault States
- Alpha vault configurations
- Deposit records
- Claim status
-
User States
- Trading positions
- Referral relationships
- Balance information
Error Handling
The protocol implements a comprehensive error handling system with specific error types for:
- Authorization failures
- Invalid state transitions
- Trading restrictions
- Balance validations
- Protocol-specific conditions
Security Model
The protocol implements a multi-level security model:
- Account validation
- Authorization checks
- State transition validation
- Balance verification
- Emergency controls