Helioq is a Solana program that enables server registration, metrics tracking, and reward distribution for server operators. It provides a decentralized way to manage and incentivize server performance.
- Server Registration: Register servers with unique IDs and assign owners
- Metrics Submission: Track server performance through uptime and task completion metrics
- Reward System: Distribute rewards based on server performance
- Grace Period: New servers get a 7-day grace period after registration
- Server Management: Support for server deactivation and ownership reassignment
- Admin Controls: Program can be paused by admin if needed
-
AdminAccount
- Manages program authority
- Tracks the reward pool
- Controls program pause state
-
Server
- Stores server information and metrics
- Tracks pending rewards
- Manages server state (active/inactive)
-
initialize
- Initializes the admin account
- Sets up program authority
-
registerServer
- Registers a new server with a unique ID
- Sets initial grace period of 7 days
- Maximum server ID length: 32 characters
-
submitMetrics
- Updates server performance metrics
- Accumulates reward points
- Requires uptime percentage (0-100)
-
claimRewards
- Claims accumulated rewards after cooldown period
- 7-day cooldown between claims
- Transfers SOL from program to server owner
-
depositRewards
- Adds SOL to the reward pool
- Only callable by authority
-
reclaimStaleRewards
- Reclaims rewards from inactive servers
- 365-day inactivity threshold
-
deactivateServer
- Deactivates a server
- Prevents further metrics submission
-
reassignServer
- Transfers server ownership
- Only works for active servers
- Rust 1.68.0 or later
- Solana Tool Suite
- Anchor Framework
- Node.js and npm/yarn