Skip to main content

7.1 Testnet Evidence

On-chain proof that C-SWON is deployed and operational on the Bittensor testnet.

Subnet Registration

FieldValue
Testnet Netuid26
Subnet Namec-swon
Networktest (wss://test.finney.opentensor.ai:443)
Owner Coldkey5Evo1iiPLpYMn5HSo5DE9tBJSgWEx4VSA6dbzsvNQshGNPGX
Owner Hotkey (UID 0)5FZijBVEXfmCqhJH8V6aXhSujVMMTPKGb76AiG4QfWVG6fvM
Owner IdentityC-SWON (*Owner)
Subnet Registered Block6797794
Tempo360 blocks
TAO Poolτ 321.06
Alpha Pool0.01 ב
Rate61411.3559 τ/ב
EMA TAO Inflowτ 0.0009
Emissionτ 0.0144
Registration Costτ 0.0925
Total Stake3.07k ב
Total Emission296.0217 ב

Registered Nodes (14 total)

Subnet Owner (UID 0)

FieldValue
UID0
Walletowner/default
Coldkey5Evo1iiPLpYMn5HSo5DE9tBJSgWEx4VSA6dbzsvNQshGNPGX
Hotkey5FZijBVEXfmCqhJH8V6aXhSujVMMTPKGb76AiG4QfWVG6fvM
Stake2.28k ב
Emission0.000000 ב
Free Balance1,588.3078 τ

Validator Hotkeys (3)

Coldkey: 5GWjFybcbmdHArkFQZAVZhyz1My1WgqNqGKzRrHML1pHpbG1 · Free Balance: 250.7048 τ

Snapshot note: The table below reflects the metagraph at early registration (shortly after block 6798914). UID 1 (vali/default) shows 0.00 emission because this snapshot was taken before the first full tempo completed. By block 6804608 (verified weight submission), UID 1 had accumulated 142.48 ב emission — see 7.3 Incentive Verification for the full post-tempo snapshot.

UIDWalletHotkey AddressReg BlockStake (ב)Emission (ב) [early snapshot]Axon
1vali/default5GYi8aRkGCqQH8YScK4yYDkfZx6DtLVz3G5WJigwwbennZz86798914626.610.00 → 142.48 (block 6804608)136.185.198.230:8111
12vali/vali25EJTJaqfvQovvEKVssXQ6bAfYbJKw71NtktBtHhz1EAiLwaF680359414.7727.49136.185.198.230:8102
13vali/vali35CyPsnqJBnZJgwHvPw9rbvagAzNU7VmdBk5juPyGmLD694Qw680361410.0518.72136.185.198.230:8103

Miner Hotkeys (10)

Coldkey: 5CswWXnGqrSLGFmHhhv6FVwD6t2gyhmByQirvG2yHwPaZ7Yg · Free Balance: 359.0903 τ

UIDWalletHotkey AddressReg BlockStake (ב)Emission (ב)Axon
2miner/default5H1MrhNSaBJCMsoNNf6KnzA5HG8VVPAsH1JbSvFwjbSp1iaw67989971.110.00136.185.198.230:8091
3miner/miner25DoRe6Zic5PUfnPUno3z8MngQEHvgqEMWhfFMEXB7wug9HsV680278534.1163.52136.185.198.230:8092
4miner/miner35Cu1eA4n2ggvZRp5BD9GmJUmk6bhvwzcPAMAHjndY29ZEJ9G680278924.6545.90136.185.198.230:8093
5miner/miner45DyTRnje55b39a5QKLvp8MiDPeJoAitdKzDZ3rnjtW3NkLzq680279418.6434.72136.185.198.230:8094
6miner/miner65DyhnBtsNdTgnGZEeWs3bwFF33e3tLHNRzCUcWUJKiutpX1C680284411.7321.85136.185.198.230:8096
7miner/miner75GrjCoBdoXh6XZkGrnLCWbLonM8RZEwsnhqHEJqRM2YN98Sk68028559.6417.95136.185.198.230:8097
8miner/miner85GxyEtrJNxHD1S3E7BEgS4HgpzcQZc1QpzS8F4DyWZxniiGs68028598.0615.01136.185.198.230:8098
9miner/miner55F1Dq8XweDtaAmyTwu2DfazrjwJnvGBoSRp7ZDbfsEZz1tnA680320614.5927.17136.185.198.230:8095
10miner/miner95HHWx8iQYEmg8dThTjdUYUs568Qt2bvEgixNxSggBnHk1BKZ68033666.8412.74136.185.198.230:8099
11miner/miner105FqZHjZb3fNsAj7VzvNyxjvavepB7REMbsv8E5QViB7PML8L68033715.8810.95136.185.198.230:8100

Emission Distribution

All 14 nodes are registered and all 13 non-owner nodes are actively serving on 136.185.198.230:

  • Miners (UIDs 2–11): ports 8091–8100
  • Validators (UIDs 1, 12, 13): ports 8111, 8102, 8103

Total subnet emission: 296.0217 ב distributed across active participants.

Block reference: The validator emission totals below reflect the block 6804608 snapshot (post-tempo, matching 7.3 Incentive Verification). UID 1's emission of 142.48 ב is included in the validator total.

RoleUIDsTotal Stake (ב)Total Emission (ב)
Owner02,2800.00
Validators1, 12, 13651.43188.69
Miners2–11135.25249.81
Total14 nodes3,066.68296.02

Verification Commands

Weight Submission (On-Chain — Verified at Block 6804608)

All 3 validators have submitted weights via subtensor.set_weights():

ValidatorUIDWeight TX BlockTargetsWeight Distribution
vali/default1680429010 minersUID 2: 65535 (15% cap), UIDs 3–11: 54057 each
vali/vali212680428210 minersUIDs 2–5,9–10: 65535; UIDs 6–8,11: 62273
vali/vali313680428510 minersAll UIDs: 65535 (equal bootstrap)

Verification:

import bittensor as bt
sub = bt.Subtensor(network='test')
for entry in sub.weights(netuid=26):
print(f'Validator UID {entry[0]} -> {len(entry[1])} targets: {entry[1][:3]}...')
# Output:
# Validator UID 1 -> 10 targets: [(2, 65535), (3, 54057), (4, 54057)]...
# Validator UID 12 -> 10 targets: [(2, 65535), (3, 65535), (4, 65535)]...
# Validator UID 13 -> 10 targets: [(2, 65535), (3, 65535), (4, 65535)]...

Verification Commands

# View subnet info
btcli subnet list --network test | grep 26

# Full metagraph with all UIDs
btcli subnet metagraph --netuid 26 --network test

# Owner wallet
btcli wallet overview --wallet.name owner --netuid 26 --network test

# Validator wallet (3 hotkeys)
btcli wallet overview --wallet.name vali --netuid 26 --network test

# Miner wallet (10 hotkeys)
btcli wallet overview --wallet.name miner --netuid 26 --network test

# List all wallets
btcli wallet list

Execution Mode During Testnet Run: CSWON_MOCK_EXEC=true was active during the initial bootstrap phase (blocks 6797794–6804608) to allow all 14 nodes to register and serve before enabling full graded execution. Validators ran the scoring pipeline end-to-end; mock mode skips the subprocess test runner and falls back to expected-pattern keyword matching. The on-chain weight submission at block 6804608 reflects real miner differentiation based on VRF task selection and mock-fallback scoring. Setting CSWON_MOCK_EXEC=false activates the full pytest + pycodestyle grader and is required for mainnet deployment.


Visual Proof of Work

Screenshots below show the complete lifecycle: subnet registration → node serving → on-chain scoring → weight assignment → explorer dashboard.

1. Subnet Registration

Subnet Registration

2. Miner Registration

Miner Registration

3. Validator Registration

Validator Registration

4. Miner Node Running

Miner Node Running

5. Validator Node Running

Validator Node Running

6. On-chain Scoring

On-chain Scoring

7. Weight Assignment

Weight Assignment

8. Explorer Dashboard

Explorer Dashboard

9. Technical Docs

Technical Docs


← Previous6.5 Testnet Deploy Guide
→ Next7.2 Validator Logs
IndexDocumentation Index