Platform is a WASM-first, peer-to-peer validator network for deterministic evaluation of miner submissions on Bittensor. Validators execute challenge logic in a hardened WASM runtime, reach stake-weighted consensus over libp2p, and submit finalized weights to the chain. Docker is reserved for local and CI test harnesses only.
Core principles
- Decentralized libp2p mesh (gossipsub + DHT) with no centralized relays.
- Stake-weighted PBFT-style consensus for challenge state and weight aggregation.
- Deterministic WASM execution with strict runtime policy and auditability.
- Explicit separation of production runtime (WASM) and test-only containers (Docker).
- Architecture
- Security Model
- Challenges
- Challenge Integration Guide
- Validator Guide
- Validator Operations
flowchart LR
Owner[Sudo Owner] -->|Signed challenge actions| Mesh[(libp2p Mesh)]
Mesh --> DHT[(DHT: submissions + consensus state)]
Mesh --> V1[Validator 1]
Mesh --> V2[Validator 2]
Mesh --> VN[Validator N]
V1 -->|Evaluations + votes| Mesh
V2 -->|Evaluations + votes| Mesh
VN -->|Evaluations + votes| Mesh
V1 -->|Final weights| BT[Bittensor Chain]
V2 -->|Final weights| BT
VN -->|Final weights| BT
sequenceDiagram
participant L as Leader
participant V1 as Validator 1
participant V2 as Validator 2
participant Vn as Validator N
participant BT as Bittensor
L->>V1: Proposal(action, height)
L->>V2: Proposal(action, height)
L->>Vn: Proposal(action, height)
V1-->>L: Vote(approve/reject)
V2-->>L: Vote(approve/reject)
Vn-->>L: Vote(approve/reject)
L-->>V1: Commit(>=2f+1 approvals)
L-->>V2: Commit(>=2f+1 approvals)
L-->>Vn: Commit(>=2f+1 approvals)
V1->>BT: Submit weights
V2->>BT: Submit weights
Vn->>BT: Submit weights
flowchart LR
Validator[Validator Node] --> Runtime[WASM Runtime]
Runtime --> Policy[Runtime Policy]
Runtime --> HostFns[Whitelisted Host Functions]
Runtime --> Audit[Audit Logs]
Policy --> Runtime
HostFns --> Runtime
Runtime -->|Deterministic outputs| Validator
git clone https://github.com/PlatformNetwork/platform.git
cd platform
cp .env.example .env
# Edit .env: add your VALIDATOR_SECRET_KEY (BIP39 mnemonic)
mkdir -p data
cargo build --release --bin validator-node
./target/release/validator-node --data-dir ./data --secret-key "${VALIDATOR_SECRET_KEY}"See Validator Operations for hardware, configuration, and monitoring.
- Production: WASM runtime only.
- Testing: Docker-backed harnesses only (e.g.,
./scripts/test-comprehensive.sh).
MIT
