Overview
This document provides a comprehensive introduction to the SN106 Bittensor subnet system, explaining its purpose as a concentrated liquidity incentivization mechanism that bridges Bittensor alpha tokens with Solana DeFi infrastructure. The material covers the system’s architecture, core components, and operational mechanics.
For detailed technical implementation information, see Technical Implementation. For operational guides, see For Miners and For Validators.
What is SN106
Section titled “What is SN106”SN106 is a specialized Bittensor subnet (NETUID 106) that rewards miners for providing concentrated liquidity to wAlpha/wTAO trading pairs on Solana’s Raydium CLMM (Concentrated Liquidity Market Maker) protocol. The system creates a bridge between Bittensor’s alpha token ecosystem and Solana’s DeFi infrastructure, enabling cross-chain liquidity provision and automated emissions distribution.
The subnet operates on a two-tier reward system:
- Subnet Performance Layer: Rewards distributed based on subnet alpha token prices
- Individual Performance Layer: NFT liquidity positions compete within pools based on concentration and market proximity
System Architecture Overview
graph TB subgraph "Bittensor Network" BT["Bittensor Chain<br/>Alpha Tokens + TAO"] SN106["SN106 Subnet<br/>NETUID=106"] SUBTENSOR["Subtensor Chain<br/>Weight Submission"] end subgraph "Cross-Chain Bridge" BRIDGE["VoidAI Bridge<br/>bridge.voidai.com"] end subgraph "Solana DeFi" WALPHA["wAlpha/wTAO Tokens"] RAYDIUM["Raydium CLMM<br/>Position NFTs"] SN106SC["SN106 Smart Contract<br/>NFT Staking"] end subgraph "Validator System" VALIDATOR["validator/index.ts<br/>Main Engine"] CONFIG["config/environment.ts<br/>Multi-chain Config"] CALC["calc/<br/>Emissions Calculator"] end subgraph "Participants" MINERS["Miners<br/>Liquidity Providers"] VALIDATORS["Validator Operators"] end BT --> BRIDGE BRIDGE --> WALPHA MINERS --> RAYDIUM RAYDIUM --> SN106SC VALIDATORS --> VALIDATOR VALIDATOR --> CONFIG VALIDATOR --> CALC VALIDATOR --> SUBTENSOR SUBTENSOR --> SN106
Sources: README.md:1-186
Core System Components
Section titled “Core System Components”The SN106 system consists of several interconnected components that work together to incentivize concentrated liquidity provision and distribute emissions based on performance metrics.
Core Component Architecture
graph TD subgraph "Validator Engine Core" VE["ValidatorEngine<br/>validator/index.ts"] TIMER["20-minute Timer<br/>Execution Cycle"] EMA["EMA Weight Management<br/>Smoothing Logic"] end subgraph "Data Collection Layer" CHAINS["getEnabledChains()<br/>Multi-chain Filter"] HOTKEYS["Hotkey-to-UID Mapping<br/>Bittensor Identity"] POSITIONS["NFT Position Data<br/>fetchAllPositions()"] TICKS["Current Tick Data<br/>Market State"] end subgraph "Emissions Calculation" POOLW["calculatePoolWeights()<br/>calc/pool-weights.ts"] NFTSCORING["calculateNFTScore()<br/>Position Evaluation"] POOLEMISSIONS["calculatePoolEmissions()<br/>Distribution Logic"] AGGREGATION["Miner Weight Aggregation<br/>Final Weights"] end subgraph "Weight Submission" POLICY["Distribution Policy<br/>Burn Mechanism"] WEIGHTS["Weight Preparation<br/>setWeightsOnSubtensor()"] SUBMISSION["Subtensor Submission<br/>weights/weights_history.json"] end VE --> CHAINS VE --> HOTKEYS VE --> POSITIONS VE --> TICKS POSITIONS --> POOLW TICKS --> NFTSCORING POOLW --> POOLEMISSIONS POOLEMISSIONS --> AGGREGATION AGGREGATION --> POLICY POLICY --> WEIGHTS WEIGHTS --> SUBMISSION
Sources: README.md:140-147
Validator Engine
Section titled “Validator Engine”The ValidatorEngine
serves as the main orchestration component, running on a 20-minute execution cycle. It coordinates data collection from multiple blockchain networks, performs emissions calculations, and submits weight updates to the Subtensor chain.
Key responsibilities include:
- Data Collection: Fetches NFT liquidity positions from enabled chains
- Performance Analysis: Calculates current tick data and position quality metrics
- Weight Calculation: Determines miner weights based on position quality and subnet performance
- Weight Submission: Submits calculated weights to the Bittensor network
Multi-Chain Data Integration
Section titled “Multi-Chain Data Integration”The system supports multiple blockchain networks through a configurable chain management system:
Network | Status | Protocol | Configuration |
---|---|---|---|
Solana | ✅ Active | Raydium CLMM | SOLANA_RPC_ENDPOINT |
Ethereum | 🔄 Coming Soon | Uniswap V3 | ETHEREUM_RPC_URL |
Base | 🔄 Coming Soon | Uniswap V3 | BASE_RPC_URL |
Emissions Calculation Engine
Section titled “Emissions Calculation Engine”The emissions calculation system evaluates NFT positions based on multiple criteria:
- Position Width: Narrower liquidity ranges receive higher scores
- Distance from Current Tick: Positions closer to market price score higher
- Liquidity Amount: Total capital contribution affects scoring
- Subnet Performance: Alpha token prices influence pool-level rewards
Sources: README.md:41-46
Operational Flow
Section titled “Operational Flow”The SN106 system operates through a continuous cycle of data collection, analysis, and reward distribution.
Complete Operational Flow
graph TB subgraph "Miner Operations" M1["Bridge Tokens<br/>bridge.voidai.com"] M2["Provide Liquidity<br/>Raydium CLMM"] M3["Stake NFT Position<br/>SN106 Smart Contract"] M4["Earn Emissions<br/>Based on Performance"] end subgraph "Validator Cycle (20 minutes)" V1["fetchAllPositions()<br/>Collect NFT Data"] V2["getCurrentTicks()<br/>Market State"] V3["calculatePoolWeights()<br/>Subnet Performance"] V4["calculateNFTScore()<br/>Position Quality"] V5["aggregateMinerWeights()<br/>Final Distribution"] V6["setWeightsOnSubtensor()<br/>Submit to Chain"] end subgraph "Reward Distribution" R1["Burn Mechanism<br/>95% to UID 0"] R2["Distribute Rewards<br/>5% to Miners"] R3["Update weights_history.json<br/>Audit Trail"] end M1 --> M2 M2 --> M3 M3 --> M4 V1 --> V2 V2 --> V3 V3 --> V4 V4 --> V5 V5 --> V6 V6 --> R1 V6 --> R2 V6 --> R3 M3 -.-> V1 R2 -.-> M4
Sources: README.md:8-13 , README.md:140-147
Burn Mechanism
Section titled “Burn Mechanism”The system implements a burn mechanism where 95% of emissions are burned to the subnet owner hotkey (UID 0) and the remaining 5% is distributed among miners in a single setWeights
call. This mechanism is controlled by the BURN_PERCENTAGE
environment variable.
Sources: README.md:122-126
Key Features
Section titled “Key Features”SN106 provides several advanced features for automated liquidity incentivization:
- Multi-Chain Support: Aggregate data from multiple blockchain networks with configurable chain filtering
- Intelligent Scoring: Advanced algorithm for NFT position evaluation based on concentration, proximity, and liquidity
- Performance-Based Rewards: Two-tier reward system tied to both subnet and individual performance metrics
- Automatic Operation: Continuous operation with configurable 20-minute intervals
- Comprehensive Logging: Detailed operation logs and weight history stored in
weights/weights_history.json
- Error Resilience: Graceful handling of network issues and automatic reconnection capabilities
Configuration Management
Section titled “Configuration Management”The system uses a typed configuration system through config/environment.ts
that validates environment variables at runtime and supports multiple deployment scenarios:
Component | Configuration Variables |
---|---|
Subtensor | SUBTENSOR_WS_URL , VALIDATOR_HOTKEY_URI , NETUID |
Solana | SOLANA_RPC_ENDPOINT , SN106_SVM_PROGRAM_ID , RAYDIUM_CLMM_PROGRAM_ID |
Burn Mechanism | BURN_PERCENTAGE |
Sources: README.md:104-131 , README.md:161-169
System Requirements
Section titled “System Requirements”The validator system is designed for production use with specific hardware and software requirements:
Minimum Specifications:
- CPU: 4 cores
- RAM: 8GB
- Storage: 50GB+ SSD
- Network: Stable internet (50+ Mbps)
- OS: Linux (Ubuntu 20.04+), macOS, or Windows
Required Software:
- Node.js v18.0.0+
- npm v8.0.0+
- Access to Solana, Ethereum, Base, and Subtensor RPC endpoints
Sources: README.md:53-81
This overview provides the foundation for understanding the SN106 system architecture and operation. For detailed setup instructions, see Configuration and Docker Deployment. For user-specific guidance, refer to For Miners and For Validators.