{
 "generated_at": "2026-09-22",
 "version": "1.0",
 "license": "CC BY 4.0",
 "attribution": "Mining Programs by Mikyö Clark, legible.network",
 "fields": [
  "work",
  "scoring",
  "split",
  "judges",
  "cadence",
  "buyer",
  "exploits"
 ],
 "field_labels": {
  "work": "The work",
  "scoring": "How it is scored",
  "split": "How the pay splits",
  "judges": "Who judges",
  "cadence": "How often it turns",
  "buyer": "Who buys",
  "exploits": "What has been gamed"
 },
 "trust": [
  "chain",
  "code",
  "docs",
  "said",
  "read",
  "unknown"
 ],
 "trust_labels": {
  "chain": "chain",
  "code": "code",
  "docs": "own docs",
  "said": "on record",
  "read": "our reading",
  "unknown": "not found"
 },
 "total": 32,
 "summary": {
  "fields": {
   "chain": 64,
   "code": 72,
   "docs": 73,
   "said": 1,
   "read": 10,
   "unknown": 4
  },
  "disagreements": 35,
  "unknowns": 4,
  "from_chain_or_code": 136
 },
 "programs": [
  {
   "netuid": 107,
   "name": "Minos",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "science",
   "repo": {
    "url": "https://github.com/minos-protocol/minos_subnet",
    "commit": "289e54ae4cc913be93f5dfe8c44febb29363dc7b",
    "committed": "2026-09-03"
   },
   "fields": {
    "work": {
     "text": "A configuration file: the parameter settings for one of the supported variant callers, the software that decides which differences in a sequenced genome are real mutations. The miner never runs the genome itself. What is paid for is the recipe that, when the validator runs it on this round's synthetic genome, finds the planted mutations best.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/minos-protocol/minos_subnet/289e54ae4cc913be93f5dfe8c44febb29363dc7b/README.md",
     "quote": "Miners will never be asked to upload outputs, they submit their variant-calling configuration"
    },
    "scoring": {
     "text": "Validators run each configuration in a Docker container on the round's genome and compare the calls to the planted truth with hap.py, a standard genomics referee. Under v2, live per the network config: score = 100 x (0.70 x core + 0.30 x germline). Core is F1 per variant class by fixed difficulty weights, one-base indels heaviest at 0.40; germline penalizes false positives; a plausibility gate zeroes an implausible callset.",
     "trust": "code",
     "path": "utils/scoring.py",
     "url": "https://raw.githubusercontent.com/minos-protocol/minos_subnet/289e54ae4cc913be93f5dfe8c44febb29363dc7b/utils/scoring.py",
     "quote": "V2_CORE_WEIGHT = 0.70; V2_GERMLINE_WEIGHT = 0.30"
    },
    "split": {
     "text": "Winner-heavy. The top eligible miner of the round gets 0.8 of the weight; ranks 2 to 20 split the remaining 0.2 in slices that shrink by 0.9 each rank; everyone else gets nothing. A miner is eligible only after scoring in 5 of the last 20 finalized rounds. Validators fetch these values live; the code's defaults are fallbacks.",
     "trust": "docs",
     "url": "https://api.theminos.ai/scoring/network-config",
     "quote": "winner_weight 0.8, dust_top_n 20, dust_decay 0.9, min_participation_rounds 5, participation_window 20",
     "disagrees": "The about page and whitepaper say the top miner wins 100 percent of emissions (sn107-004, Winner-Take-All); the code's fallback defaults are 0.9 winner and 0.8 decay (utils/weight_tracking.py); the live config on 2026-09-19 is 0.8 and 0.9."
    },
    "judges": {
     "text": "Seven validators were active on the 2026-09-09 chain snapshot. Commit-reveal is on. A validator re-runs every submitted configuration itself, in an isolated container, with hap.py as referee, so judging is a full re-execution rather than a sample. Round files are hashed before serving and released after the round, so any participant can reproduce a score. Validators below a stake floor are left out of the canonical ranking.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_version 20; chain-2026-09-09.json active_validators 7"
    },
    "cadence": {
     "text": "A round every 72 minutes, the subnet's tempo of 360 blocks, each with a fresh synthetic genome carrying hidden mutations. Weights are set every round. A new registration is immune from deregistration for 14,400 blocks, about 48 hours, three times the 5,000 most subnets use.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 14400"
    },
    "buyer": {
     "text": "Nobody yet. The roadmap marks a production variant-calling service as phase five, labelled vision, with phase one, parameter tuning, the only active phase. The whitepaper names hospitals, biobanks and pharmaceutical companies as future customers. There is no price anywhere. Emission is the only income.",
     "trust": "docs",
     "url": "https://theminos.ai/roadmap",
     "quote": "05 Production Deployment Ship the consensus caller as a production-grade service"
    },
    "exploits": {
     "text": "Over-calling: a callset that emits far more variants than targets is penalized by the overcall guardrail, and an implausible ratio of variant types is gated to zero. Memorizing the answer: mutations are planted fresh each round at positions not published in advance. Sybil hotkeys: the code pays one representative per coldkey, but the live config on 2026-09-19 has reward_normalization set to false.",
     "trust": "code",
     "path": "utils/reward_normalization.py",
     "url": "https://raw.githubusercontent.com/minos-protocol/minos_subnet/289e54ae4cc913be93f5dfe8c44febb29363dc7b/utils/reward_normalization.py",
     "quote": "an operator registering K hotkeys occupies K rank slots and is paid K times for one round's work",
     "disagrees": "The coldkey normalization exists in code at the pinned commit; the live network config returns reward_normalization false, so it is not applied."
    }
   },
   "sources": [
    "https://theminos.ai/about",
    "https://theminos.ai/roadmap",
    "https://api.theminos.ai/scoring/network-config",
    "https://github.com/minos-protocol/minos_subnet",
    "https://raw.githubusercontent.com/minos-protocol/minos_subnet/289e54ae4cc913be93f5dfe8c44febb29363dc7b/README.md",
    "https://raw.githubusercontent.com/minos-protocol/minos_subnet/289e54ae4cc913be93f5dfe8c44febb29363dc7b/utils/scoring.py",
    "https://raw.githubusercontent.com/minos-protocol/minos_subnet/289e54ae4cc913be93f5dfe8c44febb29363dc7b/utils/weight_tracking.py",
    "https://raw.githubusercontent.com/minos-protocol/minos_subnet/289e54ae4cc913be93f5dfe8c44febb29363dc7b/utils/reward_normalization.py",
    "https://raw.githubusercontent.com/minos-protocol/minos_subnet/289e54ae4cc913be93f5dfe8c44febb29363dc7b/docs/scoring.md"
   ],
   "rank": 1,
   "emission_pct": "11.3%",
   "strength": 4
  },
  {
   "netuid": 51,
   "name": "lium.io",
   "version": "1.0",
   "read_on": "2026-09-22",
   "commodity": "compute",
   "repo": {
    "url": "https://github.com/Datura-ai/lium-io",
    "commit": "606d4a7261897ee60e4881de7c75361790a86e71",
    "committed": "2026-09-22"
   },
   "fields": {
    "work": {
     "text": "GPU time by the second. A miner, called a provider, runs a small coordinator plus one or more NVIDIA GPU machines and sets an hourly price per machine. What is paid for is a machine that passes the validator's probe: rented machines are paid from one pool, eligible idle machines of the listed models from another.",
     "trust": "docs",
     "url": "https://lium.io/llms.txt",
     "quote": "a decentralized GPU rental platform on Bittensor. CLI and Python SDK for renting GPUs, managing pods, and deploying ML workloads"
    },
    "scoring": {
     "text": "Two formulas. A rented machine scores score x gpu_portion x gpu_count / total count of that model, where gpu_portion is a per-model share the platform derives from rental revenue. An idle machine of an eligible model scores gpu_count x hourly_rate x a cap multiplier, min(idle GPUs in its tier, tier cap) / idle GPUs. Both are multiplied by sysbox, driver and uptime gates.",
     "trust": "code",
     "path": "neurons/validators/src/incentive/rental_price.py",
     "url": "https://raw.githubusercontent.com/Datura-ai/lium-io/606d4a7261897ee60e4881de7c75361790a86e71/neurons/validators/src/incentive/rental_price.py",
     "quote": "result.rental_share * result.gpu_count * result.effective_rate / result.total_rental_cost"
    },
    "split": {
     "text": "Three pools, each proportional inside. Rented machines share the mining pool by score. Idle eligible machines share a second pool sized by their dollar rate per epoch divided by 0.41 and by the epoch's emission in dollars, capped at the burn ceiling. What the idle pool does not claim goes to designated burn UIDs. The packaged ceiling is 0.91, so the rented pool is 0.09.",
     "trust": "code",
     "path": "packages/lium-core/src/lium_core/shared_config/defaults.py",
     "url": "https://raw.githubusercontent.com/Datura-ai/lium-io/606d4a7261897ee60e4881de7c75361790a86e71/packages/lium-core/src/lium_core/shared_config/defaults.py",
     "quote": "total_burn_emission=0.91,",
     "disagrees": "The docs emission page says the rented pool is a fixed 13 percent and the ceiling moved from 91 to 87 percent in mid-2026; the live endpoint lium.io/api/v1/shared-config returned total_burn_emission 0.9 on 2026-09-19 and again on 2026-09-22; the packaged default at the pinned commit is still 0.91."
    },
    "judges": {
     "text": "Nine validators were active on the 2026-09-09 chain snapshot, of 64 permitted, though the docs say Lium runs a single validator and point others to a community auditor. Weights are committed then revealed, at most once per 100 blocks. The validator connects to every machine every 15 minutes, checks the sysbox runtime, hardware and a test workload, and reads rental state from the platform's backend.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 100, max_validators 64; chain-2026-09-09.json active_validators 9"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The validator checks each machine every 15 minutes, accumulates scores across those cycles, then normalizes and sets weights once per tempo. The idle-pool share is recomputed every cycle from live TAO and alpha prices. A new registration is immune from deregistration for 5,000 blocks, about 16 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000"
    },
    "buyer": {
     "text": "Renters paying per GPU-second. The pricing page lists a dollar price per GPU-hour for every model and says every pod is billed per second with no minimum. The docs name developers and AI agents as renters. Providers receive rental fees at the rate the live config sets, 0.95 on 2026-09-19. No customer is named and no dated usage or revenue figure appears on any Lium page.",
     "trust": "docs",
     "url": "https://lium.io/pricing",
     "quote": "billed per second with no minimum"
    },
    "exploits": {
     "text": "Faked or secretly busy hardware. The validator pins hashes of the NVIDIA management library per driver version, treats a GPU over 95 percent busy with under 1 percent memory as a wedged ghost, and flags held VRAM above 2,048 MB on an idle node. Idle-pool gates: price above market p90 times 1.1, disk under 1.5 times VRAM, no power-cap rights. Without sysbox every score is 0.",
     "trust": "code",
     "path": "neurons/validators/src/services/const.py",
     "url": "https://raw.githubusercontent.com/Datura-ai/lium-io/606d4a7261897ee60e4881de7c75361790a86e71/neurons/validators/src/services/const.py",
     "quote": "GPU_HELD_VRAM_MB_LIMIT = 2048"
    }
   },
   "sources": [
    "https://lium.io/llms.txt",
    "https://lium.io/pricing",
    "https://lium.io/api/v1/shared-config",
    "https://docs.lium.io/bittensor-subnet/overview",
    "https://docs.lium.io/providers/rewards/emission.md",
    "https://docs.lium.io/providers/rewards/penalties.md",
    "https://docs.lium.io/validators/index.md",
    "https://github.com/Datura-ai/lium-io",
    "https://raw.githubusercontent.com/Datura-ai/lium-io/606d4a7261897ee60e4881de7c75361790a86e71/neurons/validators/src/incentive/rental_price.py",
    "https://raw.githubusercontent.com/Datura-ai/lium-io/606d4a7261897ee60e4881de7c75361790a86e71/neurons/validators/src/incentive/default.py",
    "https://raw.githubusercontent.com/Datura-ai/lium-io/606d4a7261897ee60e4881de7c75361790a86e71/packages/lium-core/src/lium_core/shared_config/defaults.py",
    "https://raw.githubusercontent.com/Datura-ai/lium-io/606d4a7261897ee60e4881de7c75361790a86e71/neurons/validators/src/services/const.py"
   ],
   "rank": 2,
   "emission_pct": "8.0%",
   "strength": 5
  },
  {
   "netuid": 15,
   "name": "ORO",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "agents",
   "repo": {
    "url": "https://github.com/ORO-AI/oro",
    "commit": "fd0476f7aaf570d38dc405ab8b975683dfdbd285",
    "committed": "2026-09-18"
   },
   "fields": {
    "work": {
     "text": "A shopping agent: one Python file exporting agent_main that, given a shopper's request and budget, searches a catalogue, compares listings and places an order inside a sealed environment. What is paid for is that agent's performance on the day's hidden tasks. Every run's trajectory is kept by the subnet as training data for its own model.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/ORO-AI/oro/fd0476f7aaf570d38dc405ab8b975683dfdbd285/README.md",
     "quote": "Miners submit Python agents that search products, compare prices, and make purchase decisions."
    },
    "scoring": {
     "text": "Per task, a verifier in the sealed runtime pays a reward from the episode receipt; a validator's run score is the mean reward over its tasks, failures count zero. In code the aggregate is success rate times a reasoning coefficient from 0.3 to 1.0. Race results are measured against a field baseline, the top-half mean; and the top agent holds the highest Overall, an average of its last three races.",
     "trust": "code",
     "path": "src/agent/scoring.py",
     "url": "https://raw.githubusercontent.com/ORO-AI/oro/fd0476f7aaf570d38dc405ab8b975683dfdbd285/src/agent/scoring.py",
     "quote": "final_score = success_rate * coefficient; COEFF_FLOOR = 0.3; COEFF_CEILING_THRESHOLD = 0.80",
     "disagrees": "The docs scoring page fetched 2026-09-19 describes per-family verifier rewards averaged into run and race scores with no reasoning coefficient, while src/agent/scoring.py at the pinned commit still multiplies success rate by a 0.3 to 1.0 reasoning coefficient."
    },
    "split": {
     "text": "Winner-heavy with a large burn. The Backend's designated top agent gets one slot, 25 percent of the weight vector under the default 0.75 burn rate. Every survivor of the last race gets a small integer taper, M down to 1, paid out of the burn budget so it keeps nonzero emission and escapes pruning. The rest burns to uid 0. Eliminated agents get nothing.",
     "trust": "code",
     "path": "subnet/validator/weight_distribution.py",
     "url": "https://raw.githubusercontent.com/ORO-AI/oro/fd0476f7aaf570d38dc405ab8b975683dfdbd285/subnet/validator/weight_distribution.py",
     "quote": "When `t_burn >= t_top` (e.g. 0.75 / 0.25 today): burn slot pinned at U16_MAX",
     "disagrees": "The architecture page says the top agent receives the large majority of emissions with an optional burn; weight_setter.py at the pinned commit defaults _DEFAULT_BURN_RATE to 0.75, so the top slot is 25 percent of the vector and most of the rest burns."
    },
    "judges": {
     "text": "Eleven validators were active on the 2026-09-09 chain snapshot. Commit-reveal is on, weights at most once per 100 blocks. Validators run every agent themselves in Docker sandboxes and report episode receipts; the Backend aggregates included runs under an X-of-Y rule and designates the top. Each validator then fetches epoch-pinned standings and submits a deterministic vector, so the ranking comes from the Backend, not from the validator.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 100; chain-2026-09-09.json active_validators 11"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The puzzle turns daily: qualifying is open for 24 hours, the race runs at once on hidden problems, and the next window opens when it completes. The validator ticks weights every 22 minutes, about three sets per epoch. A new registration is immune from deregistration for 5,000 blocks, about 16 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000, weights_rate_limit 100"
    },
    "buyer": {
     "text": "Nobody is named. The front page sells nothing: it counts 3,947,209 scored trajectories and says the traces train the team's own model, which a June 2026 post lifted from 18.0 to 42.7 percent on the benchmark. There is no price, no customer and no product a buyer can use; a shopping assistant is promised for later. The miner's income is emission.",
     "trust": "read",
     "url": "https://oroagents.com",
     "quote": "The best agent earns the rewards, and every run becomes training data."
    },
    "exploits": {
     "text": "Hardcoding: within weeks agents matched queries to pre-computed product IDs, hid them in Caesar ciphers and planted benchmark keywords. Defences, dated April 2026: AST analysis and hash matching at upload, a hidden race problem bank nobody has seen, a qualifying bar that ratchets to 90 percent of the last winner, a reasoning judge that discounts fake thinking, and elimination of the bottom 65 percent of each race.",
     "trust": "docs",
     "url": "https://oroagents.com/blog/how-we-stop-miners-from-abusing-our-incentive-mechanism",
     "quote": "the leaderboard was dominated by agents that didn't shop at all"
    }
   },
   "sources": [
    "https://oroagents.com",
    "https://oroagents.com/blog",
    "https://oroagents.com/blog/how-we-stop-miners-from-abusing-our-incentive-mechanism",
    "https://oroagents.com/docs/miners/scoring",
    "https://oroagents.com/docs/architecture",
    "https://docs.oroagents.com/docs/miners/scoring",
    "https://github.com/ORO-AI/oro",
    "https://raw.githubusercontent.com/ORO-AI/oro/fd0476f7aaf570d38dc405ab8b975683dfdbd285/README.md",
    "https://raw.githubusercontent.com/ORO-AI/oro/fd0476f7aaf570d38dc405ab8b975683dfdbd285/src/agent/scoring.py",
    "https://raw.githubusercontent.com/ORO-AI/oro/fd0476f7aaf570d38dc405ab8b975683dfdbd285/subnet/validator/weight_distribution.py",
    "https://raw.githubusercontent.com/ORO-AI/oro/fd0476f7aaf570d38dc405ab8b975683dfdbd285/subnet/validator/weight_setter.py"
   ],
   "rank": 3,
   "emission_pct": "6.7%",
   "strength": 4
  },
  {
   "netuid": 120,
   "name": "Affine",
   "version": "1.0",
   "read_on": "2026-09-22",
   "commodity": "training",
   "repo": {
    "url": "https://github.com/AffineFoundation/affine",
    "commit": "d41cca5a12a61c482d0655ca6dce9deef594db39",
    "committed": "2026-09-21"
   },
   "fields": {
    "work": {
     "text": "A trained checkpoint: the saved weights of a coding model, uploaded to a private bucket and signalled on chain. The subnet pays whoever holds or recently held the crown, so the thing produced is a model that beats the reigning king in a duel.",
     "trust": "docs",
     "url": "https://www.affine.io/llms.txt",
     "quote": "King-of-the-hill subnet. Miners upload checkpoints privately to a validator-controlled bucket"
    },
    "scoring": {
     "text": "One duel, challenger against king, over 1,000 turns of a coding corpus. Since 2026-09-18 each turn scores min(z_R, typ_c, z_A): how far the miner's thought-to-action lift, its thought's typicality on content tokens, and its action given the thought sit from three teacher samples, in teacher standard deviations. A forfeit scores -12. The challenger crowns if its mean margin clears max(2 standard errors, 0.2 sd), the thought floor and causality gate.",
     "trust": "code",
     "path": "affine/evalsrv/sdmeter.py",
     "url": "https://raw.githubusercontent.com/AffineFoundation/affine/d41cca5a12a61c482d0655ca6dce9deef594db39/affine/evalsrv/sdmeter.py",
     "quote": "turn = min(z_R, typ_c, z_A); forfeit -> forfeit_sd",
     "disagrees": "The score.py header at this commit still calls min(R, G) the live rule and defaults score_mode to reason; affine.toml sets score_mode sd_min_rga, evalsrv/dueling.py applies it as the deciding rule, and llms.txt on 2026-09-22 agrees with the toml: min(z_R, typ_c, z_A), 1,000 turns, 0.2 sd."
    },
    "split": {
     "text": "Not proportional. Every crown won in the last 72 hours gets one equal share of the miner emission, whether or not it still holds the throne. A crown older than 72 hours earns nothing. When no crown is inside the window, the share goes to the burn UID. Effective 2026-09-14.",
     "trust": "docs",
     "url": "https://www.affine.io/llms.txt",
     "quote": "a crown is paid for at most 72 hours; every crown inside its window gets one equal share"
    },
    "judges": {
     "text": "Three validators were active on the 2026-09-09 chain snapshot, of 64 permitted. Weights are committed then revealed, at most once per 100 blocks. The validator does the work itself: it rents a GPU pod, loads both checkpoints, runs the whole duel, and seeds it from the reveal-block hash so anyone can replay the verdict. Nothing is sampled.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 100, max_validators 64; chain-2026-09-09.json active_validators 3"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The puzzle turns per duel, not per epoch: a challenger is evaluated when it reaches the front of the queue, and a crown stands until a challenger clears the bar. The snapshot on 2026-09-19 showed reign 20. A new registration is immune from deregistration for 5,000 blocks, about 16 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000; api/v1/snapshot reign_number 20, crowned_at 2026-09-19"
    },
    "buyer": {
     "text": "Nobody is named. The front page offers a chat box with the reigning model, and every crowned checkpoint is free to download with a signed manifest. There is no price, no customer and no usage figure on the site, in llms.txt or in the repository. The miner's income is emission.",
     "trust": "read",
     "url": "https://www.affine.io/",
     "quote": "Talk directly to the reigning SN120 king"
    },
    "exploits": {
     "text": "The program records its own hacks. A king crowned on a constant filler suffix benched 0 of 50, which forced min(R, G) and later the sd-meter. Reign 13, a re-upload of reign 12's weights, won on noise and was uncrowned. Defences: one evaluation slot per hotkey, burned at enqueue; a challenger holding every king safetensors digest is rejected as a copy; a published exploit audit after each crowning can revert.",
     "trust": "code",
     "path": "affine/affine.toml",
     "url": "https://raw.githubusercontent.com/AffineFoundation/affine/d41cca5a12a61c482d0655ca6dce9deef594db39/affine/affine.toml",
     "quote": "wvk-9 king crowned on a constant filler suffix and benched 0/50"
    }
   },
   "sources": [
    "https://www.affine.io/llms.txt",
    "https://www.affine.io/",
    "https://affine.io/api/v1/snapshot",
    "https://github.com/AffineFoundation/affine",
    "https://raw.githubusercontent.com/AffineFoundation/affine/d41cca5a12a61c482d0655ca6dce9deef594db39/affine/affine/score.py",
    "https://raw.githubusercontent.com/AffineFoundation/affine/d41cca5a12a61c482d0655ca6dce9deef594db39/affine/affine.toml",
    "https://raw.githubusercontent.com/AffineFoundation/affine/d41cca5a12a61c482d0655ca6dce9deef594db39/affine/affine/chain.py",
    "https://raw.githubusercontent.com/AffineFoundation/affine/d41cca5a12a61c482d0655ca6dce9deef594db39/affine/affine/state.py",
    "https://raw.githubusercontent.com/AffineFoundation/affine/d41cca5a12a61c482d0655ca6dce9deef594db39/affine/affine/payout.py",
    "https://raw.githubusercontent.com/AffineFoundation/affine/d41cca5a12a61c482d0655ca6dce9deef594db39/affine/evalsrv/sdmeter.py",
    "https://raw.githubusercontent.com/AffineFoundation/affine/d41cca5a12a61c482d0655ca6dce9deef594db39/affine/evalsrv/dueling.py",
    "https://raw.githubusercontent.com/AffineFoundation/affine/d41cca5a12a61c482d0655ca6dce9deef594db39/affine/affine/model_store.py"
   ],
   "rank": 4,
   "emission_pct": "6.0%",
   "strength": 4
  },
  {
   "netuid": 64,
   "name": "Chutes",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "inference",
   "repo": {
    "url": "https://github.com/chutesai/chutes-api",
    "commit": "3b5609f42f84e29dea374382ef1fa95b0fda329c",
    "committed": "2026-09-03"
   },
   "fields": {
    "work": {
     "text": "Compute time. A miner runs a Kubernetes cluster of GPU servers inside confidential virtual machines and hosts chutes, the platform's word for a deployable model or workload. What is paid for is the seconds an instance is live and serving, weighted by the GPU class it runs on. The index lists the SDK repository; the validator lives in chutes-api.",
     "trust": "docs",
     "url": "https://chutes.ai/docs/miner-resources/overview",
     "quote": "The goal of mining on chutes is to provide as much compute as possible, optimizing for cold start times"
    },
    "scoring": {
     "text": "A miner's score is the sum, over the last day, of the seconds each of its instances was live times that instance's compute multiplier, which folds in GPU class, bounties, urgency, and the confidential-compute and private-chute bonuses. Only instances with at least one successful invocation count. The sums are normalized to a distribution and set as weights.",
     "trust": "code",
     "path": "metasync/constants.py",
     "url": "https://raw.githubusercontent.com/chutesai/chutes-api/3b5609f42f84e29dea374382ef1fa95b0fda329c/metasync/constants.py",
     "quote": "SCORING_INTERVAL = \"1 day\"; sum (overlap_seconds * multiplier) across all history intervals",
     "disagrees": "The docs scoring page fetched 2026-09-19 describes four weighted metrics, compute units 55 percent, invocations 25, unique chutes 15, bounties 5, over a default 7-day window; the code at the pinned commit scores instance compute units alone over one day, per the spec dated 2026-04-13 in docs/specs/scoring-window.md."
    },
    "split": {
     "text": "Proportional. Every eligible miner is paid its share of the day's compute units, with no winner bonus and no floor. The split is the score vector itself, normalized to sum to one and submitted as weights.",
     "trust": "code",
     "path": "docs/specs/scoring-window.md",
     "url": "https://raw.githubusercontent.com/chutesai/chutes-api/3b5609f42f84e29dea374382ef1fa95b0fda329c/docs/specs/scoring-window.md",
     "quote": "normalizes to a distribution, and the result is set as on-chain weights"
    },
    "judges": {
     "text": "Fourteen validators were active on the 2026-09-09 chain snapshot. Commit-reveal is off. The judge is the platform: the scoring query runs against the API's own billing database, and other validators run a lite auditor package against exported audit data. The judges verify the platform's accounting rather than re-run the work. Weights are set at the top of each UTC hour.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled False, weights_rate_limit 100; chain-2026-09-09.json active_validators 14"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The score is recomputed hourly at :00 UTC over a rolling one-day window, so a new miner reaches full parity in a day and a misbehaving one phases out in a day. A new registration is immune from deregistration for 5,000 blocks, about 16 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000"
    },
    "buyer": {
     "text": "Developers and resellers paying per million tokens or per GPU hour. The pricing page lists per-model rates from $0.0245 per million input tokens and confidential GPU time from $1.80 an hour with a one-time deploy fee. The front page shows OpenRouter, Kilo, Fetch.AI, Phala and Pax Historia as logos and claims trillions of tokens a month, undated.",
     "trust": "docs",
     "url": "https://chutes.ai/pricing",
     "quote": "Pay per token. No subscription, no minimum, no markup."
    },
    "exploits": {
     "text": "Many hotkeys under one owner: only the top scorer per coldkey is paid, the rest get zero. Manipulated step and token times: resisted with medians over two days. Inflated GPU counts: checked against chute history. Invocations reported as faulty are excluded. In April 2026 the scoring window was cut from seven days to one so that misbehaviour phases out in a day rather than a week.",
     "trust": "docs",
     "url": "https://chutes.ai/docs/miner-resources/scoring",
     "quote": "For each coldkey, only the highest-scoring hotkey receives rewards All other hotkeys sharing the same coldkey receive zero score"
    }
   },
   "sources": [
    "https://chutes.ai",
    "https://chutes.ai/pricing",
    "https://chutes.ai/docs/miner-resources/overview",
    "https://chutes.ai/docs/miner-resources/scoring",
    "https://github.com/chutesai/chutes-api",
    "https://raw.githubusercontent.com/chutesai/chutes-api/3b5609f42f84e29dea374382ef1fa95b0fda329c/metasync/constants.py",
    "https://raw.githubusercontent.com/chutesai/chutes-api/3b5609f42f84e29dea374382ef1fa95b0fda329c/docs/specs/scoring-window.md"
   ],
   "rank": 5,
   "emission_pct": "5.9%",
   "strength": 4
  },
  {
   "netuid": 97,
   "name": "Albedo",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "training",
   "repo": {
    "url": "https://github.com/unarbos/albedo",
    "commit": "16049169c71a353965407625037d2fd86de6b7d8",
    "committed": "2026-09-18"
   },
   "fields": {
    "work": {
     "text": "A fine-tuned checkpoint of Qwen3.6-35B-A3B, an open 35 billion parameter model, trained further to act as a coding agent: read a real repository, run shell commands, make edits over several turns. The miner uploads it to HuggingFace or Hippius and commits a v7 reveal on chain. What is paid for is a checkpoint that beats the reigning king in a duel, twice.",
     "trust": "docs",
     "url": "https://albedo.tech/llms.txt",
     "quote": "King-of-the-hill trajectory-distillation subnet on Bittensor (netuid 97, finney)."
    },
    "scoring": {
     "text": "A duel on sampled coding-task prefixes. Per task an evaluator model rolls three reference runs, reduces them to milestones and writes yes-or-no questions. King and challenger each roll every task twice; judge models answer each question, and a side's score is its mean yes-rate over its runs. A run that collapses into a command loop scores 0 unjudged. The challenger wins when its score beats the king's by 0.025.",
     "trust": "code",
     "path": "src/albedo_eval_service/judge_core.py",
     "url": "https://raw.githubusercontent.com/unarbos/albedo/16049169c71a353965407625037d2fd86de6b7d8/src/albedo_eval_service/judge_core.py",
     "quote": "CHALLENGER_WIN_MARGIN = 0.025"
    },
    "split": {
     "text": "Equal shares across a chain of at most five kings. A new winner takes slot 1 and the sitting kings shift down; the sixth drops off. The weight of 10,000 basis points is split evenly among the members, so the reigning king earns the same as a king it displaced. A member that has been deregistered, or an empty reign, sends its share to burn UID 0.",
     "trust": "code",
     "path": "src/set_reign_worker/service.py",
     "url": "https://raw.githubusercontent.com/unarbos/albedo/16049169c71a353965407625037d2fd86de6b7d8/src/set_reign_worker/service.py",
     "quote": "new_challenger_slot_1; shift_existing_down; split_weight_evenly"
    },
    "judges": {
     "text": "Three validators were active on the 2026-09-09 chain snapshot, of 64 permitted. Commit-reveal is off; weights may change at most once per 100 blocks, and the code refreshes them every 101. The judge is a backend pipeline of services on one Postgres state machine: it ingests commits, validates files, runs the whole duel on remote GPUs with judge models, crowns, and sets weights. Nothing is sampled from miners.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled False, weights_rate_limit 100, max_validators 64; chain-2026-09-09.json active_validators 3"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The puzzle turns per duel, not per epoch: a challenger is evaluated when it reaches the front of the queue and must win two separate evals, so a first win only re-queues it at priority 0. A king stands until displaced, then fades out over four further coronations. A new registration is immune from deregistration for 5,000 blocks, about 16 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000"
    },
    "buyer": {
     "text": "Nobody is named. The front page offers a Chat with the King link to the current champion and nothing else: no price, no API, no customer and no unit of sale, on the site, in llms.txt or in the repository docs. The miner's income is emission.",
     "trust": "read",
     "url": "https://albedo.tech",
     "quote": "Chat with the King"
    },
    "exploits": {
     "text": "Re-rolling the duel: a hotkey is written to a used_hotkeys ledger once its submission finishes eval and cannot submit again, and a first win only re-queues the challenger, so the win must repeat. Copies: a secret-seeded sketch of each tensor rejects earlier entries and noised versions. Looping: 0.61 duplicate commands or a run of 5 scores 0 unjudged. Verdict-shaped text in a candidate's output is stripped before judging.",
     "trust": "code",
     "path": "src/chain_guard/db.py",
     "url": "https://raw.githubusercontent.com/unarbos/albedo/16049169c71a353965407625037d2fd86de6b7d8/src/chain_guard/db.py",
     "quote": "SELECT 1 FROM used_hotkeys WHERE hotkey = $1"
    }
   },
   "sources": [
    "https://albedo.tech/llms.txt",
    "https://albedo.tech",
    "https://github.com/unarbos/albedo",
    "https://raw.githubusercontent.com/unarbos/albedo/16049169c71a353965407625037d2fd86de6b7d8/src/albedo_eval_service/judge_core.py",
    "https://raw.githubusercontent.com/unarbos/albedo/16049169c71a353965407625037d2fd86de6b7d8/src/set_reign_worker/service.py",
    "https://raw.githubusercontent.com/unarbos/albedo/16049169c71a353965407625037d2fd86de6b7d8/src/weight_setter/service.py",
    "https://raw.githubusercontent.com/unarbos/albedo/16049169c71a353965407625037d2fd86de6b7d8/src/albedo_eval_service/control/repository.py",
    "https://raw.githubusercontent.com/unarbos/albedo/16049169c71a353965407625037d2fd86de6b7d8/src/chain_guard/db.py",
    "https://raw.githubusercontent.com/unarbos/albedo/16049169c71a353965407625037d2fd86de6b7d8/src/albedo_config/config.py",
    "https://raw.githubusercontent.com/unarbos/albedo/16049169c71a353965407625037d2fd86de6b7d8/docs/SCORING.md",
    "https://raw.githubusercontent.com/unarbos/albedo/16049169c71a353965407625037d2fd86de6b7d8/docs/MINING.md"
   ],
   "rank": 6,
   "emission_pct": "5.2%",
   "strength": 5
  },
  {
   "netuid": 4,
   "name": "Targon",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "compute",
   "repo": {
    "url": "https://github.com/manifold-inc/targon",
    "commit": "511128aabc6416ae11179306e57c144a906c9894",
    "committed": "2026-09-17"
   },
   "fields": {
    "work": {
     "text": "Attested GPU cards. A miner installs TargonOS, a signed operating system that wipes the machine and attests it to the network on every boot, and keeps confidential virtual machines available for rent. What is paid for is a live, verified card inside an auction class, whether or not a customer is using it. There is no request or response the miner answers.",
     "trust": "code",
     "path": "docs/miner/miner.md",
     "url": "https://raw.githubusercontent.com/manifold-inc/targon/511128aabc6416ae11179306e57c144a906c9894/docs/miner/miner.md",
     "quote": "Miner emissions are paid per card based on each auction's target price and the amount of compute live on the network"
    },
    "scoring": {
     "text": "No quality score. Each auction, fetched from the Tower service, names target cards, a target price and a cap in cents per card hour. The pool is target price times target cards; each verified card earns the lesser of pool divided by live cards and the cap, times 1.2, as a fraction of the dollar value of the miner emission pool, itself computed from chain emission and the TAO price.",
     "trust": "code",
     "path": "internal/validator/callbacks/weights.go",
     "url": "https://raw.githubusercontent.com/manifold-inc/targon/511128aabc6416ae11179306e57c144a906c9894/internal/validator/callbacks/weights.go",
     "quote": "perMiner := min(pool/nodes, aucInfo.MaxPrice); minerIncentive := (float64(perMiner) * 1.2 * float64(bid.Count)) / (*c.EmissionPool * 100)"
    },
    "split": {
     "text": "Proportional to verified cards in each auction, capped per card. Weight no auction covers is burned: split among the burn keys Tower names, remainder to uid 28. If payouts exceed the pool, every weight scales down pro rata. A node reporting fewer cards than the auction's min_cluster_size, 8 for the H200 and B200 classes in the docs example, earns nothing from that auction.",
     "trust": "code",
     "path": "internal/validator/callbacks/weights.go",
     "url": "https://raw.githubusercontent.com/manifold-inc/targon/511128aabc6416ae11179306e57c144a906c9894/internal/validator/callbacks/weights.go",
     "quote": "forBurn := max(setup.U16MAX-sumScores, 0); finalUids = append(finalUids, uint16(28))"
    },
    "judges": {
     "text": "Seven validators were active on the 2026-09-09 chain snapshot, against five miners. Commit-reveal is on, weights at most once per 100 blocks. A validator re-attests each miner node during the interval, counts its GPU cards against the auction's cluster minimum, prices it from Tower's auction table, and posts the weight extrinsic through a weights-api sidecar. Nothing about the compute's quality is judged, only its presence and attestation.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 100, max_validators 64; chain-2026-09-09.json active_validators 7"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes, and the validator works in the same interval: it fetches auctions and the emission pool at the start, polls miner nodes every 30 blocks, and sets weights once per interval. A new registration is immune from deregistration for 7,520 blocks, about 25 hours, half again the usual 5,000.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 7520"
    },
    "buyer": {
     "text": "Renters of confidential GPU and CPU machines by the hour, through the site and an unauthenticated inventory API. Prices run from $0.45 an hour for one RTX 4090 to $60 for an eight-card B300 class. On 2026-09-19 the inventory listed 33 SKUs, of which 7 showed any availability. No customer is named; the front page shows a logo strip and counters that read zero.",
     "trust": "docs",
     "url": "https://api.targon.com/tha/v3/inventory",
     "quote": "\"name\":\"rtx4090-small\", \"type\":\"rental\", \"cost_per_hour\":0.45, \"available\":0"
    },
    "exploits": {
     "text": "Free compute drew abuse. The May 2025 post says subsidised inference on other companies' models attracts a queue that leaves when prices rise, so emission will not fund it. The guard in code is attestation: only nodes that pass TargonOS attestation and report at least the cluster minimum enter an auction, and weight no auction covers burns rather than paying idle registrations.",
     "trust": "said",
     "statement": "sn4-010",
     "url": "https://www.manifold.inc/releases/no-such-thing-as-free-gas",
     "quote": "If we opened a gas station and cut our prices to $0, we would expect a line of cars"
    }
   },
   "sources": [
    "https://targon.com",
    "https://docs.targon.com/providers/miner/",
    "https://docs.targon.com/api/inventory",
    "https://api.targon.com/tha/v3/inventory",
    "https://www.manifold.inc/releases/no-such-thing-as-free-gas",
    "https://github.com/manifold-inc/targon",
    "https://raw.githubusercontent.com/manifold-inc/targon/511128aabc6416ae11179306e57c144a906c9894/docs/miner/miner.md",
    "https://raw.githubusercontent.com/manifold-inc/targon/511128aabc6416ae11179306e57c144a906c9894/internal/validator/callbacks/weights.go",
    "https://raw.githubusercontent.com/manifold-inc/targon/511128aabc6416ae11179306e57c144a906c9894/docs/sn4/sn4.md",
    "https://raw.githubusercontent.com/manifold-inc/targon/511128aabc6416ae11179306e57c144a906c9894/README.md"
   ],
   "rank": 7,
   "emission_pct": "4.7%",
   "strength": 5
  },
  {
   "netuid": 44,
   "name": "Score",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "inference",
   "repo": {
    "url": "https://github.com/score-technologies/turbovision",
    "commit": "d6c55296e2be449c56ed9738707730e4e300fa65",
    "committed": "2026-09-16"
   },
   "fields": {
    "work": {
     "text": "A hosted computer-vision model. The miner trains a model for one or more Elements (named tasks such as detecting players in football footage), deploys it on Chutes, a separate Bittensor subnet that rents model hosting, and records its fingerprint on chain. What is paid for is the model's answers to validator challenges, frame by frame, under a latency gate.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/score-technologies/turbovision/d6c55296e2be449c56ed9738707730e4e300fa65/README.md",
     "quote": "raw footage becomes structured, decision-ready data in real time, with early deployments focused on professional sports"
    },
    "scoring": {
     "text": "Per Element, each answer is scored on pillars (for example overlap with the answer key, player count, smoothness, role), each pillar times its manifest weight, summed. The sum is gated: subtract the Element's baseline theta, floor at delta_floor, multiply by beta, a difficulty factor. The answer key is real ground truth or a SAM3 segmentation. The winner is the highest average over at least 30 challenges in a 3-day window.",
     "trust": "code",
     "path": "scorevision/utils/manifest.py",
     "url": "https://raw.githubusercontent.com/score-technologies/turbovision/d6c55296e2be449c56ed9738707730e4e300fa65/scorevision/utils/manifest.py",
     "quote": "return max(self.apply_baseline_gate(score=score), self.delta_floor); return self.beta * improvement"
    },
    "split": {
     "text": "Winner takes all, per Element. Each Element carries a weight in the signed manifest, and the whole of that weight goes to the Element's single winner on the open-source track. On the private track the top three split the Element weight 0.80, 0.15, 0.05. Weight left unassigned, for an Element with no winner, goes to a fallback UID, 6 by default.",
     "trust": "code",
     "path": "scorevision/validator/core/weights.py",
     "url": "https://raw.githubusercontent.com/score-technologies/turbovision/d6c55296e2be449c56ed9738707730e4e300fa65/scorevision/validator/core/weights.py",
     "quote": "PRIVATE_TRACK_RANKED_WEIGHT_SHARES = (0.80, 0.15, 0.05); share = float(elem_weight); weights_by_uid[winner_uid] = weights_by_uid.get(winner_uid, 0.0) + share"
    },
    "judges": {
     "text": "Nine validators were active on the 2026-09-09 chain snapshot. Commit-reveal is off. The code names one central validator whose scoring shards pick the winners; audit validators spot-check miners rather than score them. A validator that finds no central registry on chain falls back to its own local scores. Weights go through a separate signer service.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled False, weights_rate_limit 100, max_validators 64; chain-2026-09-09.json active_validators 9",
     "disagrees": "The draft whitepaper (notes/toward-manako/wp.md) describes an aggregation service merging every validator's shards with stake-weighted MAD outlier pruning; the code at the pinned commit reads winners from a single SCOREVISION_CENTRAL_VALIDATOR_HOTKEY and falls back to local data when it is absent."
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The validator's weights loop runs every 150 blocks, 30 minutes, by default; the runner scores each Element every 300 blocks unless the manifest sets its own window. Winners are chosen over a rolling 3-day window with a 30-challenge minimum. A new registration is immune from deregistration for 7,500 blocks, about 25 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 7500; central_validator.py --tempo default 150; SCOREVISION_PUBLIC_EVAL_WINDOW_DAYS 3.0"
    },
    "buyer": {
     "text": "Nobody is named. The front page describes a research company building models and offers a Console link and a Let's Talk contact form. There is no price, no product page, no endpoint and no customer named in text on the site or in the repository; the README says early deployments focus on professional sports. The miner's income is emission.",
     "trust": "read",
     "url": "https://www.wearescore.com/",
     "quote": "We're building models that turn raw video into structured intelligence."
    },
    "exploits": {
     "text": "Copying a rival's model: when two miners score alike on the same challenges, recent and historical samples are compared, and a confirmed copy loses the tie to the earlier on-chain commit block. Slow but accurate models are zeroed by the latency gate. A blacklist file in the repository holds 120 hotkeys, reason unstated, and any weight to them is removed before signing.",
     "trust": "code",
     "path": "scorevision/validator/core/weights.py",
     "url": "https://raw.githubusercontent.com/score-technologies/turbovision/d6c55296e2be449c56ed9738707730e4e300fa65/scorevision/validator/core/weights.py",
     "quote": "if hk and hk in blacklisted_hotkeys: weights_by_uid.pop(uid, None)"
    }
   },
   "sources": [
    "https://www.wearescore.com/",
    "https://github.com/score-technologies/turbovision",
    "https://raw.githubusercontent.com/score-technologies/turbovision/d6c55296e2be449c56ed9738707730e4e300fa65/README.md",
    "https://raw.githubusercontent.com/score-technologies/turbovision/d6c55296e2be449c56ed9738707730e4e300fa65/VALIDATOR.md",
    "https://raw.githubusercontent.com/score-technologies/turbovision/d6c55296e2be449c56ed9738707730e4e300fa65/scorevision/utils/manifest.py",
    "https://raw.githubusercontent.com/score-technologies/turbovision/d6c55296e2be449c56ed9738707730e4e300fa65/scorevision/validator/core/weights.py",
    "https://raw.githubusercontent.com/score-technologies/turbovision/d6c55296e2be449c56ed9738707730e4e300fa65/scorevision/miner/open_source/MINER.md",
    "https://raw.githubusercontent.com/score-technologies/turbovision/d6c55296e2be449c56ed9738707730e4e300fa65/blacklist",
    "https://raw.githubusercontent.com/score-technologies/turbovision/d6c55296e2be449c56ed9738707730e4e300fa65/notes/documentation/validator.md",
    "https://raw.githubusercontent.com/score-technologies/turbovision/d6c55296e2be449c56ed9738707730e4e300fa65/notes/toward-manako/wp.md"
   ],
   "rank": 8,
   "emission_pct": "3.4%",
   "strength": 5
  },
  {
   "netuid": 80,
   "name": "OpenRoboto",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "training",
   "repo": {
    "url": "https://github.com/openroboto-ai/openroboto-subnet",
    "commit": "726e42aea3a8901dc2f431ab8d17c7d5c46594a4",
    "committed": "2026-09-08"
   },
   "fields": {
    "work": {
     "text": "A fine-tuned robot control model, uploaded whole to Hugging Face. Miners start from the season's base model (LingBot-VLA 2.0 for simulation since 2026-09-01), train it by any recipe, publish the complete merged checkpoint, pay a fee in TAO, and announce the Hugging Face commit on chain. Every submitted model is public and free to download.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/openroboto-ai/openroboto-subnet/726e42aea3a8901dc2f431ab8d17c7d5c46594a4/docs/SUBNET_OVERVIEW.md",
     "quote": "publish their fine-tunes as complete model checkpoints on Hugging Face"
    },
    "scoring": {
     "text": "A benchmark worker runs each checkpoint through LIBERO manipulation tasks in the MuJoCo simulator, seeded from the commitment's block hash plus a drand beacon. The score is the average success rate. Ranking is king-of-the-hill: a challenger takes the crown only if its score exceeds the champion's by more than 0.01; a tie loses and the challenger is left off the board. The evaluation code is in a separate repository.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/openroboto-ai/openroboto-subnet/726e42aea3a8901dc2f431ab8d17c7d5c46594a4/docs/SUBNET_OVERVIEW.md",
     "quote": "the challenge succeeds only if challenger_score > champion_score + champion_margin (default 0.01)",
     "disagrees": "The overview at the pinned commit says the round scores six LIBERO suites for a pi0.5 base; the live competitions API on 2026-09-19 names the simulation benchmark libero_pro_custom_1 with a LingBot-VLA 2.0 base and a baseline of 0.285833 over 5 trials."
    },
    "split": {
     "text": "Three pools. Simulation takes 15 percent of the miner share and pays only its top three at 70, 20 and 10 percent of that. Each of two real-robot tracks on an xArm 6 takes 42.5 percent, settled once a season: 95 percent to the single champion vested over 120 days, 5 percent shared by entries clearing the qualification bar. Live weights on 2026-09-19 read 0.425, 0.425, 0.105, 0.03, 0.015.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/openroboto-ai/openroboto-subnet/726e42aea3a8901dc2f431ab8d17c7d5c46594a4/docs/SUBNET_OVERVIEW.md",
     "quote": "relative weights 70 / 20 / 10 within the simulation track's 15% emission allocation"
    },
    "judges": {
     "text": "Nine validators were active on the 2026-09-09 chain snapshot, of 64 permitted. Weights are committed then revealed, at most once per 100 blocks. Validators do not run the benchmark: validator.py reads a settled weight vector from the operator's backend API with a read-only key, normalizes it and calls set_weights. The evaluation itself runs on the operator's benchmark workers.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 100, max_validators 64; chain-2026-09-09.json active_validators 9"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The validator's default is to set weights every 720 minutes. The simulation board turns per submission: a checkpoint is scored when it reaches the front of the queue and the champion holds until beaten. Real-robot tracks run as seasons of roughly a month, with fixed submission and evaluation windows. A new registration is immune for 5,000 blocks, about 16 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000; validator.example.yaml weight_interval_min: 720"
    },
    "buyer": {
     "text": "Nobody is named. The front page describes a competition whose winning model becomes the next base, and every checkpoint is public on Hugging Face. The competitions API lists fees paid by miners, 0.1 TAO burned for simulation and 1.5 TAO transferred for a real track, and no price for anyone else. No customer, product or usage figure was found on the site, in the API or in the repository.",
     "trust": "read",
     "url": "https://www.openroboto.ai/",
     "quote": "Fine-tune the base model, submit your weights on-chain, and the best model becomes the next base."
    },
    "exploits": {
     "text": "The overview records a red-team study: the four base LIBERO suites could be saturated for about $50 of GPU time by memorizing public demonstrations, so two swap-perturbation suites were added. Other named attacks and answers: queue flooding, met by the burn fee and one commitment per hotkey per round; copying the champion, met by the tie-loses margin; resubmitting another miner's weights, met by shard fingerprinting; replayed burns, a 10-block window.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/openroboto-ai/openroboto-subnet/726e42aea3a8901dc2f431ab8d17c7d5c46594a4/docs/SUBNET_OVERVIEW.md",
     "quote": "the four base suites alone could be saturated for roughly $50 of GPU time by memorizing public demonstrations"
    }
   },
   "sources": [
    "https://www.openroboto.ai/",
    "https://api.openroboto.ai/api/v1/competitions",
    "https://api.openroboto.ai/control.json",
    "https://github.com/openroboto-ai/openroboto-subnet",
    "https://raw.githubusercontent.com/openroboto-ai/openroboto-subnet/726e42aea3a8901dc2f431ab8d17c7d5c46594a4/docs/SUBNET_OVERVIEW.md",
    "https://raw.githubusercontent.com/openroboto-ai/openroboto-subnet/726e42aea3a8901dc2f431ab8d17c7d5c46594a4/validator.py",
    "https://raw.githubusercontent.com/openroboto-ai/openroboto-subnet/726e42aea3a8901dc2f431ab8d17c7d5c46594a4/validator.example.yaml",
    "https://raw.githubusercontent.com/openroboto-ai/openroboto-subnet/726e42aea3a8901dc2f431ab8d17c7d5c46594a4/README.md",
    "https://raw.githubusercontent.com/openroboto-ai/openroboto-cli/main/docs/REAL_TRACK.md"
   ],
   "rank": 9,
   "emission_pct": "3.0%",
   "strength": 2
  },
  {
   "netuid": 114,
   "name": "SOMA",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "inference",
   "repo": {
    "url": "https://github.com/DendriteHQ/SOMA",
    "commit": "83b828d695ae9551c1d4cd105a9965d29e778d75",
    "committed": "2026-09-16"
   },
   "fields": {
    "work": {
     "text": "Compression code. A miner submits an algorithm, model or hybrid that shrinks the context a coding agent sends to a language model: conversation history, tool output, repository files. The miner runs no server; the platform and validators run the agent with and without the compressor. What is paid for is the compressor that saves the most weighted tokens while the agent still solves its tasks.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/DendriteHQ/SOMA/83b828d695ae9551c1d4cd105a9965d29e778d75/README.md",
     "quote": "SOMA is a Bittensor subnet focused on context compression for AI agents."
    },
    "scoring": {
     "text": "Per task, x is how many baseline runs solved it and y how many miner runs did. The token score is log2(baseline tokens / miner tokens) clamped to [-2, 2], output tokens counted at 3, cached input at 0.1. At y/x of 0.5 or under the score runs from -2 to -1; from 0.5 to 0.8 it blends toward the token score; above, token score plus a bonus to 0.1.",
     "trust": "code",
     "path": "mcp_platform/app/api/routes/scoring.py",
     "url": "https://raw.githubusercontent.com/DendriteHQ/SOMA/83b828d695ae9551c1d4cd105a9965d29e778d75/mcp_platform/app/api/routes/scoring.py",
     "quote": "SCORING_BONUS_MAX = 0.1",
     "disagrees": "docs/miner/scoring.md at the pinned commit, mirrored at thesoma.ai/docs/miner/scoring, gives a bonus cap of 3.0, a penalty floor of -4.0 and a threshold of floor(0.8x); mcp_platform/app/api/routes/scoring.py at the same commit caps the bonus at 0.1, starts the penalty at -2 and uses ceil(0.8x)."
    },
    "split": {
     "text": "Winner takes each contest. Tasks are classed short, medium or long; the three-way contest carries 0.25 of the miner weight, the three pairs 0.15 each, the three singles 0.10 each. The top scorer in each contest takes its weight, ties split evenly, and a miner with no score in a member class is not in that contest. Whatever the platform's burn ratio withholds goes to burn.",
     "trust": "code",
     "path": "mcp_platform/app/services/incentive_calculator.py",
     "url": "https://raw.githubusercontent.com/DendriteHQ/SOMA/83b828d695ae9551c1d4cd105a9965d29e778d75/mcp_platform/app/services/incentive_calculator.py",
     "quote": "LAYER_WEIGHTS_BY_SUBSET_SIZE: dict[int, float] = {3: 0.25, 2: 0.45, 1: 0.30}"
    },
    "judges": {
     "text": "Nine validators were active on the 2026-09-09 chain snapshot, of 64 permitted. Commit-reveal is off; weights may change at most once per 100 blocks, and the code sets them every 110. A validator runs agent tasks and grades patches in a container, but the weights it submits arrive signed from the platform's get_best_miners endpoint, with a cached copy as fallback. The burn ratio is a platform database setting.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled False, weights_rate_limit 100, max_validators 64; chain-2026-09-09.json active_validators 9"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes, and weights are set every 110 blocks. The puzzle turns per competition, not per epoch: an upload window, an idle gap, then a screening stage and full evaluation on hidden tasks whose images go public only for the evaluation window plus a grace period. A new registration is immune from deregistration for 5,000 blocks, about 16 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000"
    },
    "buyer": {
     "text": "Developers routing model calls through SOMA. The front page prices one model, DeepSeek V4 Pro, at $1.32 per million tokens direct and $1.19 through SOMA, about 10 percent off, with two more models marked coming soon. The tools listed are SOMARIZER, a Compressor for OpenClaw and a SOMA App. No customer is named and no dated usage figure appears on the site.",
     "trust": "docs",
     "url": "https://thesoma.ai",
     "quote": "$1.32 / 1M $1.19 / 1M ~10% off"
    },
    "exploits": {
     "text": "Prompt edits that change the agent instead of compressing it: the miner rules allow only compression markers and loop guards, and forbid rewriting instructions or forcing shortcuts to cut tokens. Memorizing the test: evaluation tasks live in a private image repository made public only for the evaluation window. Blind deletion: a miner at or below half of baseline quality scores the penalty alone. Top submissions get an integrity review.",
     "trust": "code",
     "path": "miner/README_prompting.md",
     "url": "https://raw.githubusercontent.com/DendriteHQ/SOMA/83b828d695ae9551c1d4cd105a9965d29e778d75/miner/README_prompting.md",
     "quote": "Prompt edits that force shortcuts to reduce token usage."
    }
   },
   "sources": [
    "https://thesoma.ai",
    "https://thesoma.ai/docs",
    "https://thesoma.ai/docs/miner/INCENTIVE_MECHANISM",
    "https://thesoma.ai/docs/miner/scoring",
    "https://github.com/DendriteHQ/SOMA",
    "https://raw.githubusercontent.com/DendriteHQ/SOMA/83b828d695ae9551c1d4cd105a9965d29e778d75/README.md",
    "https://raw.githubusercontent.com/DendriteHQ/SOMA/83b828d695ae9551c1d4cd105a9965d29e778d75/mcp_platform/app/api/routes/scoring.py",
    "https://raw.githubusercontent.com/DendriteHQ/SOMA/83b828d695ae9551c1d4cd105a9965d29e778d75/mcp_platform/app/services/incentive_calculator.py",
    "https://raw.githubusercontent.com/DendriteHQ/SOMA/83b828d695ae9551c1d4cd105a9965d29e778d75/mcp_platform/app/api/routes/frontend.py",
    "https://raw.githubusercontent.com/DendriteHQ/SOMA/83b828d695ae9551c1d4cd105a9965d29e778d75/validator/validator.py",
    "https://raw.githubusercontent.com/DendriteHQ/SOMA/83b828d695ae9551c1d4cd105a9965d29e778d75/validator/chain/weigt_setter.py",
    "https://raw.githubusercontent.com/DendriteHQ/SOMA/83b828d695ae9551c1d4cd105a9965d29e778d75/validator/config/settings.py",
    "https://raw.githubusercontent.com/DendriteHQ/SOMA/83b828d695ae9551c1d4cd105a9965d29e778d75/docs/miner/INCENTIVE_MECHANISM.md",
    "https://raw.githubusercontent.com/DendriteHQ/SOMA/83b828d695ae9551c1d4cd105a9965d29e778d75/docs/miner/scoring.md",
    "https://raw.githubusercontent.com/DendriteHQ/SOMA/83b828d695ae9551c1d4cd105a9965d29e778d75/miner/README_prompting.md"
   ],
   "rank": 10,
   "emission_pct": "2.4%",
   "strength": 5
  },
  {
   "netuid": 3,
   "name": "Teutonic",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "training",
   "repo": {
    "url": "https://github.com/unarbos/teutonic",
    "commit": "72a9f8598b61568dafc416954d52d5f48b691678",
    "committed": "2026-09-19"
   },
   "fields": {
    "work": {
     "text": "A trained checkpoint of Teutonic-II, a 110 billion parameter mixture-of-experts language model, uploaded privately through a validator-issued credential and signalled ready on chain. Only the weight shards may differ from the genesis files. Each hotkey gets one submission forever. What is paid for is a reign: holding, or having recently held, the crown.",
     "trust": "docs",
     "url": "https://www.teutonic.ai/llms.txt",
     "quote": "You (a miner) train a better checkpoint (a challenger), upload it through a validator-issued encrypted upload credential"
    },
    "scoring": {
     "text": "A paired duel on the same text sequences: per sequence the challenger's loss is subtracted from the king's, a paired bootstrap of the mean difference gives a one-sided lower confidence bound, and the challenger is crowned only if that bound clears delta. chain.toml at the pinned commit sets 20,000 sequences across five datasets and delta_threshold 0.0095; copied weights are rejected before any duel.",
     "trust": "code",
     "path": "teutonic/evaluation/policy.py",
     "url": "https://raw.githubusercontent.com/unarbos/teutonic/72a9f8598b61568dafc416954d52d5f48b691678/teutonic/evaluation/policy.py",
     "quote": "lcb = float(np.quantile(boot, alpha)); accepted = lcb > delta_threshold",
     "disagrees": "llms.txt, last verified 2026-08-24, states delta 0.5 nats and n 2000; chain.toml at the 2026-09-19 commit sets delta_threshold 0.0095 and n 20000, and dashboard.json lists seven configs stepping from 0.5 to 0.0095, the current king crowned under 0.0125."
    },
    "split": {
     "text": "Equal shares, not winner-take-all. The current king and up to four prior kings still registered each get one equal share of the weight, 20 percent at five; when none maps to the metagraph the whole weight burns to uid 0. dashboard.json on 2026-09-19 showed reigns 19 to 23 at weight 0.2 each, so one crown pays for roughly four more reigns.",
     "trust": "code",
     "path": "teutonic/validator/runtime.py",
     "url": "https://raw.githubusercontent.com/unarbos/teutonic/72a9f8598b61568dafc416954d52d5f48b691678/teutonic/validator/runtime.py",
     "quote": "share = 1.0 / len(target_uids); king_chain_size: int = 5"
    },
    "judges": {
     "text": "Three validators were active on the 2026-09-09 chain snapshot. Commit-reveal is on with a four-epoch reveal period. Judging is one control plane: a validator service sends king and challenger to a remote GPU evaluator, records the bootstrap verdict in Postgres, and a weight publisher pushes the equal-share plan; a burn script routes everything to uid 0 when the evaluator is down. Nothing is sampled from other validators.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, commit_reveal_period 4, weights_version 2000; chain-2026-09-09.json active_validators 3"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. Weights are republished every 101 blocks, a constraint in the control-plane schema. The puzzle turns per duel: a challenger is evaluated when it reaches the queue front and a king stands until beaten; the dashboard showed reign 23 crowned 2026-09-17. A new registration is immune from deregistration for 10,000 blocks, about 33 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 10000; dashboard.json weight_status cadence_blocks 101"
    },
    "buyer": {
     "text": "Nobody. Crowned checkpoints are published to a public bucket for free download and the August 2026 report names researchers as the audience. There is no price, no customer and no product page. The income loop llms.txt describes is emission sold for TAO to buy more GPU time and train again.",
     "trust": "read",
     "url": "https://www.teutonic.ai/llms.txt",
     "quote": "Kings earn the subnet's emissions (paid in SN3 \"alpha\" tokens). You sell alpha for TAO, buy more GPU time, train again."
    },
    "exploits": {
     "text": "Weight copying: a challenger whose safetensors match the king is rejected at evaluation, and the same weights by SHA-256 get at most three completed evaluations across all hotkeys. Uploads sit in private prefixes and challenger identity is hidden until promotion. The evaluation sample is seeded from a block hash unknown at submission. Contract files must byte-match genesis and tensors named mtp are refused.",
     "trust": "code",
     "path": "teutonic/validator/service.py",
     "url": "https://raw.githubusercontent.com/unarbos/teutonic/72a9f8598b61568dafc416954d52d5f48b691678/teutonic/validator/service.py",
     "quote": "if \"challenger .safetensors are identical to the king\" in reason: ... return \"safetensors_reuse_limit\""
    }
   },
   "sources": [
    "https://www.teutonic.ai/",
    "https://www.teutonic.ai/llms.txt",
    "https://teutonic.ai/dashboard.json",
    "https://github.com/unarbos/teutonic",
    "https://raw.githubusercontent.com/unarbos/teutonic/72a9f8598b61568dafc416954d52d5f48b691678/README.md",
    "https://raw.githubusercontent.com/unarbos/teutonic/72a9f8598b61568dafc416954d52d5f48b691678/chain.toml",
    "https://raw.githubusercontent.com/unarbos/teutonic/72a9f8598b61568dafc416954d52d5f48b691678/teutonic/evaluation/policy.py",
    "https://raw.githubusercontent.com/unarbos/teutonic/72a9f8598b61568dafc416954d52d5f48b691678/teutonic/validator/runtime.py",
    "https://raw.githubusercontent.com/unarbos/teutonic/72a9f8598b61568dafc416954d52d5f48b691678/teutonic/validator/service.py",
    "https://raw.githubusercontent.com/unarbos/teutonic/72a9f8598b61568dafc416954d52d5f48b691678/scripts/weight_publisher.py",
    "https://raw.githubusercontent.com/unarbos/teutonic/72a9f8598b61568dafc416954d52d5f48b691678/scripts/burn_weights.py"
   ],
   "rank": 11,
   "emission_pct": "2.4%",
   "strength": 5
  },
  {
   "netuid": 8,
   "name": "Vanta",
   "version": "1.0",
   "read_on": "2026-09-22",
   "commodity": "forecasting",
   "repo": {
    "url": "https://github.com/taoshidev/vanta-network",
    "commit": "1b758503cd77cffa859be29e2bc3843ef16256de",
    "committed": "2026-09-20"
   },
   "fields": {
    "work": {
     "text": "Trading orders. A miner posts long, short or flat signals on forex, crypto, equities or commodities pairs into a simulated account whose size is set by deposited collateral in Theta, Taoshi's token. Validators book the orders against live prices with fees and slippage. What is paid for is the account's realized profit in dollars, week by week.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/taoshidev/vanta-network/1b758503cd77cffa859be29e2bc3843ef16256de/README.md",
     "quote": "Miners can submit LONG, SHORT, or FLAT signal for Forex, Crypto, Equities, or Commodities trade pairs into the network during market hours."
    },
    "scoring": {
     "text": "Debt-based. Each week, ending Sunday 00:00 UTC, a miner's realized profit above its own prior high-water mark, in USD, times a penalty multiplier for drawdown, risk profile and minimum collateral, minus unrealized losses, becomes a payout the network owes. Average daily PnL carries 100 percent of the score; Calmar, Sharpe, Omega, Sortino and t-statistic are computed at weight 0.0.",
     "trust": "code",
     "path": "vali_objects/scoring/debt_based_scoring.py",
     "url": "https://raw.githubusercontent.com/taoshidev/vanta-network/1b758503cd77cffa859be29e2bc3843ef16256de/vali_objects/scoring/debt_based_scoring.py",
     "quote": "\"Needed payout\" = Cumulative earnings from activation through end of previous pay period (PnL in USD * penalties)",
     "disagrees": "The docstring of debt_based_scoring.py says payout periods start and end at midnight Sunday 00:00:00 UTC; the same file computes week boundaries with TimeUtil.ms_at_start_of_week, which rounds to Monday 00:00 UTC via weekday(), and the pinned commit's challengeperiod_manager.py calls the boundary the first Monday 00:00 UTC."
    },
    "split": {
     "text": "Proportional to debt owed. Each miner's weight is its remaining weekly payout in USD divided by the emission projected, in USD, over the days left to Sunday. Every eligible miner also gets a dust floor: one unit in challenge period, two on probation, three in main competition. If the debts sum to less than the emission, the excess weight goes to burn UID 229.",
     "trust": "code",
     "path": "vali_objects/scoring/debt_based_scoring.py",
     "url": "https://raw.githubusercontent.com/taoshidev/vanta-network/1b758503cd77cffa859be29e2bc3843ef16256de/vali_objects/scoring/debt_based_scoring.py",
     "quote": "If sum < 1.0: assign (1.0 - sum) to burn address (uid 229 mainnet / uid 5 testnet)"
    },
    "judges": {
     "text": "Twelve validators were active on the 2026-09-09 chain snapshot. Commit-reveal is on. A validator is the exchange: it receives every order, prices it from live feeds, charges fees and slippage, keeps performance, penalty and emission ledgers in 12-hour checkpoints, runs plagiarism and elimination checks, and recomputes weights every five minutes. Nothing is sampled; every order is booked.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 100, max_validators 64; chain-2026-09-09.json active_validators 12"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The payout period is a week, Sunday 00:00 UTC to Sunday. Ledgers checkpoint every 12 hours and weights refresh every 5 minutes. A new registration is immune from deregistration for only 1,200 blocks, about 4 hours, against the 5,000 most subnets use; the challenge period itself runs 61 to 90 days.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 1200; SET_WEIGHT_REFRESH_TIME_MS = 60 * 5 * 1000; CHALLENGE_PERIOD_MINIMUM_DAYS = 61",
     "disagrees": "The Sunday 00:00 UTC payout boundary comes from the debt_based_scoring.py docstring; the boundary the code computes, TimeUtil.ms_at_start_of_week, is Monday 00:00 UTC, and the head commit promotes pro-transition miners at that Monday boundary."
    },
    "buyer": {
     "text": "Two kinds. Traders pay Vanta Trading, Taoshi's prop-firm front end, a one-time evaluation fee, $14 for a $5,000 account up to $599 for $100,000 with a 100 percent reward split, and are paid weekly if they pass. The network's own page says the protocol A-books the best strategies into real capital. No figure for capital deployed or signals sold appears in text.",
     "trust": "docs",
     "url": "https://www.vantatrading.io/pricing",
     "quote": "On a $100,000 account: 60/40 $259, 70/30 $329, 80/20 $399, 90/10 $499, 100/0 $599."
    },
    "exploits": {
     "text": "Copying another miner's orders: a follower detector compares order streams over a 10-day lookback at 2-minute resolution, flags similarity above 0.75, and elimination follows a two-week review. Eliminated hotkeys are permanently blacklisted. Recovering a loss earns nothing, since payout is gated on the high-water mark. A 1 percent floor on volatility blocks gaming the Sharpe denominator. Drawdown of 5 percent intraday or 8 percent end-of-day eliminates.",
     "trust": "code",
     "path": "vali_objects/vali_config.py",
     "url": "https://raw.githubusercontent.com/taoshidev/vanta-network/1b758503cd77cffa859be29e2bc3843ef16256de/vali_objects/vali_config.py",
     "quote": "PLAGIARISM_FOLLOWER_SIMILARITY_THRESHOLD = 0.75; PLAGIARISM_REVIEW_PERIOD_MS = 1000 * 60 * 60 * 24 * 14",
     "disagrees": "The README at the pinned commit gives one drawdown rule for all miners, 5 percent intraday or 8 percent end-of-day, while docs/miner.md in the same repository says challenge-period miners are eliminated at 5 percent end-of-day and only main-competition miners at 8."
    }
   },
   "sources": [
    "https://www.vantanetwork.io/llms.txt",
    "https://www.vantatrading.io/pricing",
    "https://github.com/taoshidev/vanta-network",
    "https://raw.githubusercontent.com/taoshidev/vanta-network/1b758503cd77cffa859be29e2bc3843ef16256de/README.md",
    "https://raw.githubusercontent.com/taoshidev/vanta-network/1b758503cd77cffa859be29e2bc3843ef16256de/docs/miner.md",
    "https://raw.githubusercontent.com/taoshidev/vanta-network/1b758503cd77cffa859be29e2bc3843ef16256de/vali_objects/scoring/debt_based_scoring.py",
    "https://raw.githubusercontent.com/taoshidev/vanta-network/1b758503cd77cffa859be29e2bc3843ef16256de/vali_objects/scoring/weight_calculator_manager.py",
    "https://raw.githubusercontent.com/taoshidev/vanta-network/1b758503cd77cffa859be29e2bc3843ef16256de/vali_objects/vali_config.py",
    "https://raw.githubusercontent.com/taoshidev/vanta-network/1b758503cd77cffa859be29e2bc3843ef16256de/vali_objects/plagiarism/plagiarism_manager.py"
   ],
   "rank": 12,
   "emission_pct": "2.3%",
   "strength": 5
  },
  {
   "netuid": 9,
   "name": "iota",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "training",
   "repo": {
    "url": "https://github.com/macrocosm-os/iota",
    "commit": "22d702acd07453dabb187abedfad185826091341",
    "committed": "2026-08-30"
   },
   "fields": {
    "work": {
     "text": "Forward-pass work on one slice of a language model. An orchestrator run by Macrocosmos assigns each miner one layer of a model being pretrained; the miner computes activations, the numbers passed between layers, streams them through a shared bucket, and periodically uploads its weights. What is paid for is validated activation work, not a finished model.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/macrocosm-os/iota/22d702acd07453dabb187abedfad185826091341/README.md",
     "quote": "Miners compete to process as many activations as possible in the training stage."
    },
    "scoring": {
     "text": "Validators score each miner's forward-pass activations in short windows on several checks: consistency over time, agreement with peers on the same layer, expected signal shape, and anti-gaming patterns. Scores sum over a rolling window of about a day. On-chain weight is the miner's share of its run's total score, times one minus the run's burn factor, times the run's allocation.",
     "trust": "docs",
     "url": "https://docs.macrocosmos.ai/subnets/subnet-9-iota/scoring-rewards-and-kicking.md",
     "quote": "validators independently measure the forward-pass activations each miner produces during training and assign a score for the work done in each validation window",
     "disagrees": "The docs say the exact thresholds live in the code; the repository at the pinned commit holds no scoring function. task_execution.py loads validation functions from an orchestrator directory that is not in the repository, and weight_setting.py fetches finished scores from /validator/global_miner_scores."
    },
    "split": {
     "text": "Proportional. Every miner with positive verified work gets its share of its run's score; the validator normalizes the vector to sum to one. Whatever miners do not earn is set as weight on the owner UID 209, the burn. The orchestrator decides the burn share; settings.py defines FALLBACK_BURN_FACTOR = 0.8 but nothing in the repository reads it.",
     "trust": "code",
     "path": "src/validator/src/validator/utils/weight_setting.py",
     "url": "https://raw.githubusercontent.com/macrocosm-os/iota/22d702acd07453dabb187abedfad185826091341/src/validator/src/validator/utils/weight_setting.py",
     "quote": "raw_weights = torch.nn.functional.normalize(scores, p=1, dim=0); burn_factor = next((weight for uid, weight in weights.items() if uid == common_settings.OWNER_UID), None)"
    },
    "judges": {
     "text": "Ten validators were active on the 2026-09-09 chain snapshot. Commit-reveal is off; weights may be set once per 100 blocks. A validator fetches validation tasks from the orchestrator every minute and runs them, but the scores it submits are the orchestrator's global miner scores, fetched whole; if that call fails it copies the stake-weighted weights already on chain.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled False, weights_rate_limit 100, weights_version 4062; chain-2026-09-09.json active_validators 10"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The validator submits weights every 21 minutes, on a timer independent of training epochs. Scores aggregate over a rolling window of about a day; kick policies apply at the end of each training epoch. A new registration is immune from deregistration for 5,000 blocks, about 16 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000; validator settings.py WEIGHT_SUBMIT_INTERVAL: int = 60 * 21"
    },
    "buyer": {
     "text": "Nobody is named. The front page on 2026-09-19 sells two routes: an SDK to run your own training on IOTA, and a managed route where you bring a workload and talk to the founding team. There is no price, no customer and no checkpoint for download. The index's dashboard fetch on 2026-09-09 read zero on every counter.",
     "trust": "docs",
     "url": "https://iota.macrocosmos.ai/",
     "quote": "Bring a defined workload, and we take it from qualification through to a result you can act on."
    },
    "exploits": {
     "text": "The docs name the prior design's failure: under winner-takes-all, miners hoarded whole models, which IOTA answered by splitting the model into layers and paying per validated slice. Against faked work, scoring includes checks for tell-tale repetition or shortcuts; miners can be kicked each epoch by a bottom-by-score or threshold policy, removed by an operator, or banned by tier.",
     "trust": "docs",
     "url": "https://docs.macrocosmos.ai/subnets/subnet-9-iota.md",
     "quote": "every miner had to fit an entire model locally, and \"winner-takes-all\" rewards encouraged model hoarding"
    }
   },
   "sources": [
    "https://iota.macrocosmos.ai/",
    "https://docs.macrocosmos.ai/subnets/subnet-9-iota.md",
    "https://docs.macrocosmos.ai/subnets/subnet-9-iota/scoring-rewards-and-kicking.md",
    "https://github.com/macrocosm-os/iota",
    "https://raw.githubusercontent.com/macrocosm-os/iota/22d702acd07453dabb187abedfad185826091341/README.md",
    "https://raw.githubusercontent.com/macrocosm-os/iota/22d702acd07453dabb187abedfad185826091341/src/validator/src/validator/utils/weight_setting.py",
    "https://raw.githubusercontent.com/macrocosm-os/iota/22d702acd07453dabb187abedfad185826091341/src/validator/src/validator/settings.py",
    "https://raw.githubusercontent.com/macrocosm-os/iota/22d702acd07453dabb187abedfad185826091341/shared/common/src/common/settings.py",
    "https://raw.githubusercontent.com/macrocosm-os/iota/22d702acd07453dabb187abedfad185826091341/src/validator/src/validator/utils/task_execution.py"
   ],
   "rank": 13,
   "emission_pct": "2.3%",
   "strength": 3
  },
  {
   "netuid": 53,
   "name": "engy",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "inference",
   "repo": {
    "url": "https://github.com/hanlinai/engy",
    "commit": "9dc14b4ac2aeb66a35c430e5bca650ceae08a6ff",
    "committed": "2026-09-13"
   },
   "fields": {
    "work": {
     "text": "Tokens of a named open model, served on the miner's own GPUs. The miner runs an inference engine, dials out to engy's gateway, serves the buyer requests routed to it, and attaches a TOPLOC activation fingerprint to every response as proof that the canonical checkpoint ran. What is paid for is paid tokens served, on a model the miner has committed to and qualified on.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/hanlinai/engy/9dc14b4ac2aeb66a35c430e5bca650ceae08a6ff/README.md",
     "quote": "engy serves frontier open models on consumer GPUs, with cryptographic verification that the model you pay for is the model that ran."
    },
    "scoring": {
     "text": "Per miner and model, score = floor(sum of prompt plus completion tokens x score_rate[model] / 1000), where score_rate is a per-model rate the operator sets, not the price card. Only requests with HTTP 2xx and a positive cost count. Four gates, any of which zeroes the epoch: acceptance under 99 percent, time to first token p99, time per token p99, cheat verdicts above 1 percent.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/hanlinai/engy/9dc14b4ac2aeb66a35c430e5bca650ceae08a6ff/docs/SN53_ONE_PAGER.md",
     "quote": "score = floor( Σ tokens(r) · score_rate[model] / 1000 ) if every gate passes"
    },
    "split": {
     "text": "Proportional. Each miner-model row's share is its score divided by the sum of all scores, scaled onto 65,535 with the rounding remainder to the top row. No model pools, no floor, no winner bonus. When an epoch has no billed traffic, or every score is zero, the whole 65,535 goes to the owner hotkey as a burn.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/hanlinai/engy/9dc14b4ac2aeb66a35c430e5bca650ceae08a6ff/docs/SN53_ONE_PAGER.md",
     "quote": "each row's share is `score_micro ÷ Σ score_micro`, with the rounding remainder going to the highest-scoring row"
    },
    "judges": {
     "text": "Twelve validators were active on the 2026-09-09 chain snapshot, of 64 permitted. Weights are committed then revealed, at most once per 100 blocks. The validator in this repository is a light one: it fetches a weight vector from provider.engy.ai, checks the master hotkey's signature, and resubmits it every 120 blocks. Proof checking runs on the provider's audit box, whose code is not in the repository.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 100, max_validators 64; chain-2026-09-09.json active_validators 12",
     "disagrees": "The one-pager says a validator samples requests, verifies the proof and sets weights; validator/sync.py at the pinned commit says the provider owns scoring and the validator checks only that the payload came from the master hotkey, and VALIDATOR.md calls the GPU audit box a different component."
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes, and the light validator resubmits the same vector every 120 blocks to stay inside the activity cutoff. Scoring is per epoch on the provider's clock; the one-pager says weekly in production. A new registration is immune from deregistration for 1 block, so a fresh key has no grace period at all.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 1",
     "disagrees": "The one-pager says epochs are weekly in production and 4 hours on staging; the docstring of validator/sync.py at the pinned commit says the code once pinned 604800 seconds while production ran 86400 and staging 3600, one day and one hour."
    },
    "buyer": {
     "text": "Developers and agents paying per token through one OpenAI-compatible endpoint at api.engy.ai with prepaid billing. The front page prices eight models per million tokens, from $0.04 input and $0.08 output for deepseek-v4.1-flash to $1.95 and $9.75 for kimi-k3, with cached-input rates. Integration guides cover Claude Code, Cursor and Codex. No customer is named and no dated usage figure appears.",
     "trust": "docs",
     "url": "https://engy.ai",
     "quote": "engy serves frontier open models so you can trust the answer."
    },
    "exploits": {
     "text": "Serving a cheaper model under the canonical name: in the team's live test an INT4 checkpoint claiming the FP8 root scored about 0.55 on TOPLOC against 0.18 to 0.23 for honest miners and was caught. Buying your own traffic: only requests with a positive cost count, so free-tier, internal and probe traffic mint no weight. Registration churn: a fresh key starts at zero. A tripped gate costs one epoch.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/hanlinai/engy/9dc14b4ac2aeb66a35c430e5bca650ceae08a6ff/docs/SN53_ONE_PAGER.md",
     "quote": "Only traffic somebody actually paid for scores; free-tier, internal, and probe traffic cannot mint weight."
    }
   },
   "sources": [
    "https://engy.ai",
    "https://engy.ai/docs",
    "https://github.com/hanlinai/engy",
    "https://raw.githubusercontent.com/hanlinai/engy/9dc14b4ac2aeb66a35c430e5bca650ceae08a6ff/README.md",
    "https://raw.githubusercontent.com/hanlinai/engy/9dc14b4ac2aeb66a35c430e5bca650ceae08a6ff/docs/SN53_ONE_PAGER.md",
    "https://raw.githubusercontent.com/hanlinai/engy/9dc14b4ac2aeb66a35c430e5bca650ceae08a6ff/docs/MINER.md",
    "https://raw.githubusercontent.com/hanlinai/engy/9dc14b4ac2aeb66a35c430e5bca650ceae08a6ff/docs/VALIDATOR.md",
    "https://raw.githubusercontent.com/hanlinai/engy/9dc14b4ac2aeb66a35c430e5bca650ceae08a6ff/validator/validator.py",
    "https://raw.githubusercontent.com/hanlinai/engy/9dc14b4ac2aeb66a35c430e5bca650ceae08a6ff/validator/sync.py",
    "https://raw.githubusercontent.com/hanlinai/engy/9dc14b4ac2aeb66a35c430e5bca650ceae08a6ff/validator/schedule.py",
    "https://raw.githubusercontent.com/hanlinai/engy/9dc14b4ac2aeb66a35c430e5bca650ceae08a6ff/validator/chain.py"
   ],
   "rank": 14,
   "emission_pct": "2.1%",
   "strength": 2
  },
  {
   "netuid": 93,
   "name": "Bitcast",
   "version": "1.0",
   "read_on": "2026-09-22",
   "commodity": "media",
   "repo": {
    "url": "https://github.com/bitcast-network/bitcast-x",
    "commit": "a1cd12382de5eb2194f13ab7504e44a132bdc873",
    "committed": "2026-09-17"
   },
   "fields": {
    "work": {
     "text": "An original X post that satisfies a brand's campaign brief, by a creator ranked inside a curated influence map, whose hashed draft and later submission a miner platform commits on chain in hash-linked batches for validators to replay. Mechanism 0, the YouTube side in the repository the chain identity names, exists at about 2 percent of emission; this X side, mechanism 1, takes about 98 percent.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/bitcast-network/bitcast-x/a1cd12382de5eb2194f13ab7504e44a132bdc873/README.md",
     "quote": "This repository implements mechanism 1 of SN93 (~98% of subnet emission). The mechanism 0 YouTube creator-economy mechanism (~2% of emission)",
     "disagrees": "The chain identity and the index name bitcast-network/bitcast, the 2 percent YouTube repository, and the explainer treats YouTube as the work; the bitcast-x README and AGENTS.md fetched 2026-09-22 put X at about 98 percent, and no value in either repository's code or config fixes that split."
    },
    "scoring": {
     "text": "A language model passes or fails the post against the brief at temperature zero, any of three checks passing. A passing post's score starts at twice the author's influence in the campaign's curated map; each retweet from a listed account adds 1 times that account's influence, each quote 3 times, scaled by 0.1 + 0.9 / relationship score when the engager already has a tie to the author.",
     "trust": "code",
     "path": "src/bitcast_x/scoring.py",
     "url": "https://raw.githubusercontent.com/bitcast-network/bitcast-x/a1cd12382de5eb2194f13ab7504e44a132bdc873/src/bitcast_x/scoring.py",
     "quote": "BASELINE_TWEET_SCORE_FACTOR = 2.0 RETWEET_WEIGHT = 1.0 QUOTE_WEIGHT = 3.0 CABAL_BASE = 0.1 CABAL_SCALE = 0.9"
    },
    "split": {
     "text": "No value in code or config fixes the 98 to 2 split between the X and YouTube mechanisms; the validator submits only to mechid 1. At the default weight_score_blend of 1.0, a miner's weight is its share of deduplicated tweet scores. Dollar floors, daily campaign pools split by score to the 0.65 power, set weight only if the blend is lowered. No productive post, all weight burns to uid 0.",
     "trust": "code",
     "path": "src/bitcast_x/config.py",
     "url": "https://raw.githubusercontent.com/bitcast-network/bitcast-x/a1cd12382de5eb2194f13ab7504e44a132bdc873/src/bitcast_x/config.py",
     "quote": "Share of mechanism-1 emission weight allocated by deduplicated tweet scores instead of campaign floors. 1.0 (the default) allocates purely on content value",
     "disagrees": "docs/protocol.md at the same commit says reward construction sums per-tweet USD floors by miner UID and normalizes them into the weight vector; config.py defaults weight_score_blend to 1.0, which weights by tweet score and ignores floors unless lowered, and CHANGELOG.md lists the change under 3.0.0 as unreleased."
    },
    "judges": {
     "text": "Nine validators were active on the 2026-09-09 chain snapshot against five miners; commit-reveal is on. A validator re-derives the result: it reads each miner's 45-byte batch commitments from historical blocks, fetches the post and engagement from the X provider, runs the brief prompt on Chutes or OpenRouter, checks 15,000 alpha in conviction or stake, and submits to mechanism 1. Publisher, X provider and language model are not decentralized.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 100; chain-2026-09-09.json active_validators 9, active_miners 5"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The validator polls every 12 seconds and submits weights once its mechanism 1 last update is older than weight_epoch_blocks, 100 by default. A campaign's reward pool pays over a seven-day emission window in daily budgets, and its featured post is pinned one day before close. A registration is immune from deregistration for 50,400 blocks, seven days.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 50400"
    },
    "buyer": {
     "text": "Brands, none named. The dashboard on 2026-09-22 shows $438.1K lifetime revenue across chains, $276.7K of it spent buying the subnet token, and $544.0K paid to 1.3K creators, 78 on YouTube and 1,216 on X. The revenue ledger lists 1,211 transactions, USDC and USDT on Ethereum and TAO on the X side, with wallet addresses but no payer's name. No brand page, price for a brief, or contact.",
     "trust": "docs",
     "url": "https://bitcast.network/",
     "quote": "REVENUE $438.1K BUYBACKS $276.7K RATIO 63.1%"
    },
    "exploits": {
     "text": "Engagement rings: a retweet or quote from an account with an existing relationship score to the author is scaled by 0.1 + 0.9 / score, self-engagement is dropped, and creators passing the same brief cannot boost one another. Backdated attribution: the hashed draft must be committed on chain before the post exists, and a post counts once. Sybil miners: qualification needs 15,000 alpha in conviction or staked to the hotkey.",
     "trust": "code",
     "path": "src/bitcast_x/scoring.py",
     "url": "https://raw.githubusercontent.com/bitcast-network/bitcast-x/a1cd12382de5eb2194f13ab7504e44a132bdc873/src/bitcast_x/scoring.py",
     "quote": "scale = CABAL_BASE + CABAL_SCALE / relationship"
    }
   },
   "sources": [
    "https://bitcast.network/",
    "https://bitcast.network/revenue",
    "https://github.com/bitcast-network/bitcast-x",
    "https://github.com/bitcast-network/bitcast",
    "https://raw.githubusercontent.com/bitcast-network/bitcast-x/a1cd12382de5eb2194f13ab7504e44a132bdc873/README.md",
    "https://raw.githubusercontent.com/bitcast-network/bitcast-x/a1cd12382de5eb2194f13ab7504e44a132bdc873/AGENTS.md",
    "https://raw.githubusercontent.com/bitcast-network/bitcast-x/a1cd12382de5eb2194f13ab7504e44a132bdc873/CHANGELOG.md",
    "https://raw.githubusercontent.com/bitcast-network/bitcast-x/a1cd12382de5eb2194f13ab7504e44a132bdc873/docs/protocol.md",
    "https://raw.githubusercontent.com/bitcast-network/bitcast-x/a1cd12382de5eb2194f13ab7504e44a132bdc873/src/bitcast_x/scoring.py",
    "https://raw.githubusercontent.com/bitcast-network/bitcast-x/a1cd12382de5eb2194f13ab7504e44a132bdc873/src/bitcast_x/rewards.py",
    "https://raw.githubusercontent.com/bitcast-network/bitcast-x/a1cd12382de5eb2194f13ab7504e44a132bdc873/src/bitcast_x/config.py",
    "https://raw.githubusercontent.com/bitcast-network/bitcast-x/a1cd12382de5eb2194f13ab7504e44a132bdc873/src/bitcast_x/chain.py",
    "https://raw.githubusercontent.com/bitcast-network/bitcast-x/a1cd12382de5eb2194f13ab7504e44a132bdc873/src/bitcast_x/qualification.py",
    "https://raw.githubusercontent.com/bitcast-network/bitcast-x/a1cd12382de5eb2194f13ab7504e44a132bdc873/src/bitcast_x/validator/rewards.py",
    "https://raw.githubusercontent.com/bitcast-network/bitcast-x/a1cd12382de5eb2194f13ab7504e44a132bdc873/src/bitcast_x/validator/service.py",
    "https://raw.githubusercontent.com/bitcast-network/bitcast-x/a1cd12382de5eb2194f13ab7504e44a132bdc873/src/bitcast_x/validator/scoring.py"
   ],
   "rank": 15,
   "emission_pct": "2.0%",
   "strength": 5
  },
  {
   "netuid": 68,
   "name": "NOVA",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "science",
   "repo": {
    "url": "https://github.com/metanova-labs/nova",
    "commit": "623f3456088f651609a1bcb870ab0587b0dc0520",
    "committed": "2026-09-16"
   },
   "fields": {
    "work": {
     "text": "Drug candidates on paper. Each epoch a miner submits one string holding 20 small molecules, written as reaction plus building blocks, and one nanobody sequence, both aimed at the target proteins named for that epoch. The string is timelock-encrypted, uploaded to the miner's public GitHub repository, and a pointer is committed on chain. Nothing is synthesized; what is paid for is a predicted binder.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/metanova-labs/nova/623f3456088f651609a1bcb870ab0587b0dc0520/docs/MINER.md",
     "quote": "Submission: One string molecules|sequences, encrypted and uploaded; chain stores the GitHub path."
    },
    "scoring": {
     "text": "Validators decrypt every entry after the epoch closes and reject any that fails format, the epoch's allowed reaction, uniqueness per target, or a similarity ceiling against past submissions. Molecules are scored by Boltz-2, a structure-prediction model, on predicted binding affinity to the target, normalized by heavy-atom count; higher wins. Nanobodies are ranked by BoltzGen on confidence, physical interaction and developability; lowest rank sum wins.",
     "trust": "code",
     "path": "config/config.yaml",
     "url": "https://raw.githubusercontent.com/metanova-labs/nova/623f3456088f651609a1bcb870ab0587b0dc0520/config/config.yaml",
     "quote": "boltz_metric: [\"affinity_probability_binary\", \"affinity_pred_value\"]; combination_strategy: \"heavy_atom_normalization\"; boltzgen_rank_by: rank_sum"
    },
    "split": {
     "text": "Winner takes all, twice over: 60 percent of the miner weight to the best molecule entry, 40 percent to the best nanobody, ties to the earliest committed block. A type with no valid winner sends its share to UID 0. At this commit the payout override is on: the validator sets all weight on UID 42 and posts each winner's share to an emission-transfer API that pays off chain.",
     "trust": "code",
     "path": "neurons/validator/weights.py",
     "url": "https://raw.githubusercontent.com/metanova-labs/nova/623f3456088f651609a1bcb870ab0587b0dc0520/neurons/validator/weights.py",
     "quote": "weights[override_uid] = 1.0 - burn_rate; payouts.append((\"molecule\", winner_molecules, molecule_proportion))",
     "disagrees": "docs/MINER.md and the site's nova page say the winner per type receives the incentive; the code at the pinned commit, with config/config.yaml payout.enabled true and override_uid 42, puts all on-chain weight on UID 42 and pays winners through emission-transfer-api.metanova-labs.ai (neurons/validator/payouts.py)."
    },
    "judges": {
     "text": "Five validators were active on the 2026-09-09 chain snapshot. Commit-reveal is on. A validator re-runs the whole judgment itself: it decrypts every entry, runs Boltz-2 and BoltzGen on two 48 GB GPUs, and picks the winners. Nothing is sampled. A team-issued VALIDATOR_API_KEY turns on score sharing and monitoring with Metanova's servers. The bonds moving average is set to 1.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 100, bonds_moving_avg 1; chain-2026-09-09.json active_validators 5"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The competition epoch in the code is 361 blocks, one block longer, so the two drift against each other. Commitments in the last 10 blocks of an epoch are ignored. The epoch's target and allowed reaction are derived from its start block hash. A new registration is immune from deregistration for 5,000 blocks, about 16 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000; MINER.md: Competitions last for 361 blocks; config.yaml no_submission_blocks: 10"
    },
    "buyer": {
     "text": "No paying customer is named and there is no price. The partnerships page offers screening as a service, co-development and custom competitions to biotech and pharmaceutical organizations, and names two partners: OnePot.AI, a robotic synthesis lab that makes the hits, and Yalotein, for whom the nanobody track was built. The miner's income is the epoch bounty.",
     "trust": "docs",
     "url": "https://www.metanova-labs.ai/partnerships",
     "quote": "We are open to partnering with biotech, pharmaceutical, and research organizations to collaborate beyond traditional service agreements."
    },
    "exploits": {
     "text": "Resubmitting past winners or near-copies: a molecule with Tanimoto similarity of 0.5 or more to any prior submission for the target invalidates the whole entry; duplicates per target are rejected; the 20 molecules must clear a fingerprint entropy floor of 0.25; nanobodies within 0.95 of the target's top 50 are rejected. Timelock encryption stops copying inside an epoch. The miner guide says the unmodified baseline earns nothing.",
     "trust": "code",
     "path": "config/config.yaml",
     "url": "https://raw.githubusercontent.com/metanova-labs/nova/623f3456088f651609a1bcb870ab0587b0dc0520/config/config.yaml",
     "quote": "max_similarity_to_historical: 0.5 # maximum similarity to historical submissions to be considered valid"
    }
   },
   "sources": [
    "https://www.metanova-labs.ai/nova",
    "https://www.metanova-labs.ai/partnerships",
    "https://github.com/metanova-labs/nova",
    "https://raw.githubusercontent.com/metanova-labs/nova/623f3456088f651609a1bcb870ab0587b0dc0520/README.md",
    "https://raw.githubusercontent.com/metanova-labs/nova/623f3456088f651609a1bcb870ab0587b0dc0520/docs/MINER.md",
    "https://raw.githubusercontent.com/metanova-labs/nova/623f3456088f651609a1bcb870ab0587b0dc0520/docs/VALIDATOR.md",
    "https://raw.githubusercontent.com/metanova-labs/nova/623f3456088f651609a1bcb870ab0587b0dc0520/config/config.yaml",
    "https://raw.githubusercontent.com/metanova-labs/nova/623f3456088f651609a1bcb870ab0587b0dc0520/neurons/validator/weights.py",
    "https://raw.githubusercontent.com/metanova-labs/nova/623f3456088f651609a1bcb870ab0587b0dc0520/neurons/validator/payouts.py",
    "https://raw.githubusercontent.com/metanova-labs/nova/623f3456088f651609a1bcb870ab0587b0dc0520/neurons/validator/ranking.py",
    "https://raw.githubusercontent.com/metanova-labs/nova/623f3456088f651609a1bcb870ab0587b0dc0520/neurons/validator/validator.py",
    "https://raw.githubusercontent.com/metanova-labs/nova/623f3456088f651609a1bcb870ab0587b0dc0520/neurons/validator/molecule_validity.py"
   ],
   "rank": 16,
   "emission_pct": "1.9%",
   "strength": 5
  },
  {
   "netuid": 28,
   "name": "SayGM",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "inference",
   "repo": {
    "url": "https://github.com/taostat/gm-validator",
    "commit": "6993bb22dbe00f5e50c9e97d490f87c74cb67d8a",
    "committed": "2026-09-05"
   },
   "fields": {
    "work": {
     "text": "Resold access to closed models. A miner brings its own Anthropic, OpenAI, Google or other provider keys into a confidential virtual machine on Phala Cloud, declares which models it serves at what discount off gm's retail price, and serves buyer requests the gateway routes to it. The index lists the miner repository, taostat/gm-miner; the validator lives in taostat/gm-validator.",
     "trust": "docs",
     "url": "https://docs.saygm.com/mining/overview/",
     "quote": "GM miners supply upstream model capacity and earn the spread between their declared offer and GM's buyer price."
    },
    "scoring": {
     "text": "Dollars served. Each epoch the gm-operated finalizer publishes an artifact set to a public bucket; the validator sums each miner's earnings plus surcharge in nano-dollars across every product it served, and does not re-derive cost or re-verify signatures. Reliability appears on the miners page but is not in the weight formula at the pinned commit.",
     "trust": "code",
     "path": "validator/src/gm_validator/scoring.py",
     "url": "https://raw.githubusercontent.com/taostat/gm-validator/6993bb22dbe00f5e50c9e97d490f87c74cb67d8a/validator/src/gm_validator/scoring.py",
     "quote": "A miner's epoch score is the sum of earnings_ndollars + surcharge_ndollars across every product they served."
    },
    "split": {
     "text": "Cap and burn. A miner's weight is the dollars it served divided by the dollar value of the epoch's miner pool: 41 percent of the alpha issued that epoch, at the close price. Whatever the pool exceeds total served dollars is set as weight on the owner UID 3, the burn. If demand exceeds the pool, miners share it pro rata and the burn is rounding dust.",
     "trust": "code",
     "path": "validator/src/gm_validator/alpha_economics.py",
     "url": "https://raw.githubusercontent.com/taostat/gm-validator/6993bb22dbe00f5e50c9e97d490f87c74cb67d8a/validator/src/gm_validator/alpha_economics.py",
     "quote": "weight_i = consumed_usd_i / pool_usd where pool_usd = emissions_alpha * MINER_EMISSION_PCT * alpha_price_usd; MINER_EMISSION_PCT = Decimal(\"0.41\")"
    },
    "judges": {
     "text": "Twelve validators were active on the 2026-09-09 chain snapshot. Commit-reveal is on; the weights rate limit is 1 block and the bonds moving average is 0. Validators do not see requests: each mirrors the finalized epoch artifacts from a public bucket, treats them as authoritative, and computes only the weight vector, re-deriving no cost and re-verifying no signature.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 1, bonds_moving_avg 0; chain-2026-09-09.json active_validators 12"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The validator defines an epoch as 361 blocks, tempo plus one, and scores only the newest closed epoch, once. The miners page on 2026-09-19 listed epoch 25,203 finalized at 02:28 UTC and 25,204 at 03:42 UTC. A new registration is immune from deregistration for 3,600 blocks, about 12 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 3600; gm-validator README BLOCKS_PER_EPOCH 361 (tempo + 1)"
    },
    "buyer": {
     "text": "Developers paying per million tokens through an OpenAI-compatible gateway at api.saygm.com/v1, signing up by email, Google or Bittensor with no card required. No customer is named. The miners page publishes every finalized epoch: epoch 25,222, finalized 2026-09-20 01:38 UTC, carried $702.74 of traffic over 13,712 requests across 59 earning miners.",
     "trust": "docs",
     "url": "https://saygm.com/",
     "quote": "Point Cursor, Cline, Claude Code, or your AI SDK at the gm gateway. One base URL. No rewrites."
    },
    "exploits": {
     "text": "No incident is recorded. The validator zeroes any miner the finalizer marks blacklisted, so a banned hotkey earns nothing that epoch. On the miner side, the gateway checks that each reply echoes the model the offer claims, provider keys sit in verified key slots inside the TEE, and the miner image is pinned by digest and attested. No public log of gaming was found on the site, docs or repositories.",
     "trust": "code",
     "path": "validator/src/gm_validator/alpha_economics.py",
     "url": "https://raw.githubusercontent.com/taostat/gm-validator/6993bb22dbe00f5e50c9e97d490f87c74cb67d8a/validator/src/gm_validator/alpha_economics.py",
     "quote": "consumed = _ZERO if miner.is_blacklisted else miner.consumed_usd"
    }
   },
   "sources": [
    "https://saygm.com/",
    "https://saygm.com/miners",
    "https://docs.saygm.com/mining/overview/",
    "https://github.com/taostat/gm-validator",
    "https://raw.githubusercontent.com/taostat/gm-validator/6993bb22dbe00f5e50c9e97d490f87c74cb67d8a/README.md",
    "https://raw.githubusercontent.com/taostat/gm-validator/6993bb22dbe00f5e50c9e97d490f87c74cb67d8a/validator/src/gm_validator/scoring.py",
    "https://raw.githubusercontent.com/taostat/gm-validator/6993bb22dbe00f5e50c9e97d490f87c74cb67d8a/validator/src/gm_validator/alpha_economics.py",
    "https://raw.githubusercontent.com/taostat/gm-validator/6993bb22dbe00f5e50c9e97d490f87c74cb67d8a/validator/src/gm_validator/config.py",
    "https://github.com/taostat/gm-miner",
    "https://raw.githubusercontent.com/taostat/gm-miner/50f6b9b50035f453af0dd2d4ee17e4614959888e/README.md",
    "https://raw.githubusercontent.com/taostat/gm-miner/50f6b9b50035f453af0dd2d4ee17e4614959888e/docs/provider-model-support.md"
   ],
   "rank": 17,
   "emission_pct": "1.7%",
   "strength": 5
  },
  {
   "netuid": 91,
   "name": "cascade",
   "version": "1.0",
   "read_on": "2026-09-22",
   "commodity": "forecasting",
   "repo": {
    "url": "https://github.com/TensorLink-AI/cascade",
    "commit": "7ebfc19da3f21c5b78b402f85446647f166b14cc",
    "committed": "2026-09-22"
   },
   "fields": {
    "work": {
     "text": "A data generator: Python code that, from a shared seed, yields synthetic time series to train a small forecasting model. The miner ships code only, no weights and no GPU, and commits an encrypted pointer on chain that unlocks before the round boundary. What is paid for is a generator whose data trains a Toto2-4M forecaster that beats the king's on private real-world windows.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/README.md",
     "quote": "miners write the synthetic data generators that train it. Better data trains a better forecaster"
    },
    "scoring": {
     "text": "King and challenger each train a Toto2-4M from a shared init on their generator's data. Validators score both on the same private held-out windows by the geometric mean of CRPS and MASE, lower is better. A paired bootstrap of 10,000 resamples gives a one-sided 95 percent lower bound on the challenger's relative improvement; it wins if that bound clears the margin. An uncomputable bound is inconclusive and the king holds.",
     "trust": "code",
     "path": "cascade/eval/koth.py",
     "url": "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/cascade/eval/koth.py",
     "quote": "The challenger *wins the round* iff that LCB clears the win margin"
    },
    "split": {
     "text": "Geometric decay across the lineage. The current king plus up to 4 prior kings still registered are paid in proportion to 0.5 to the power of their distance from the throne, about 52, 26, 13, 6 and 3 percent. A deregistered prior king drops out and the rest renormalize; with no valid king everything burns to UID 0. The dethrone margin is 0.01 fresh, 0.005 after 8 rounds.",
     "trust": "code",
     "path": "chain.toml",
     "url": "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/chain.toml",
     "quote": "reward_prior_kings = 4 ... king_decay = 0.5 # geometric decay across [king, prior kings]",
     "disagrees": "docs/ARCHITECTURE.md at the pinned commit still says the validator sets an equal share across the current king plus up to reward_prior_kings prior kings; chain.toml at the same commit sets king_decay 0.5, cascade/validator/loop.py passes it to decayed_share_vector, and the README and llms.txt give about 52/26/13/6/3 percent."
    },
    "judges": {
     "text": "Seven validators were active on the 2026-09-09 chain snapshot, of 64 permitted; the margin rollout doc counts 6 external validators. Weights are committed then revealed, at most once per 100 blocks. Training runs on the owner's trainer on rented pods under one shared seed; each validator downloads the king's and finalists' checkpoints, scores them itself on private windows, runs the bootstrap verdict, and publishes a signed receipt cascade-audit can replay.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 100, max_validators 64; chain-2026-09-09.json active_validators 7"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes, but the puzzle turns every 3,600 blocks: a round of about 12 hours with boundaries near 08:30 and 20:30 UTC, an encrypted reveal 25 blocks before the boundary, a one-hour heat and a five-hour final. Rounds without funded seats run nothing and the king holds. A new registration is immune from deregistration for 5,000 blocks, about 16 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000",
     "disagrees": "The README at the pinned commit announces rolling intake next: 3 hour settlements against a king trained once per 12 hour era, switched on when 51 percent of validator stake signals readiness on chain; chain.toml at the same commit keeps epoch_blocks 3600 with rolling_from_block and era_king_from_block at 0, and whether the on-chain lock-in has fired was not checked."
    },
    "buyer": {
     "text": "Nobody. The chain URL cascadesub.net did not resolve on 2026-09-19; testnet.cascadesub.net serves a scoreboard of rounds, reigns and model error with no product, price, API or customer. The README describes the output as a trained forecaster checkpoint, and every crowned king's generator code is published. The miner's income is emission.",
     "trust": "read",
     "url": "https://testnet.cascadesub.net/",
     "quote": "King-of-the-hill · compete on synthetic data · Bittensor",
     "disagrees": "On 2026-09-22 cascadesub.net resolves and redirects to dashboard.cascadesub.net, the mainnet scoreboard of rounds, reigns and model error; it still shows no product, price, API or customer."
    },
    "exploits": {
     "text": "Copying a rival's generator: exact-identity dedup on the file tree, the normalized token stream and the stream with names masked, plus a behavioral probe for identical output; the earliest reveal keeps the slot and dropped copies still burn the hotkey. A similarity threshold was tried and removed after operators spaced variants just under it and it produced one false drop. Jitter-duplicated channels: a 0.999 correlation gate, in shadow.",
     "trust": "code",
     "path": "cascade/interface/dedup.py",
     "url": "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/cascade/interface/dedup.py",
     "quote": "a ratio bar is gameable by construction"
    }
   },
   "sources": [
    "https://testnet.cascadesub.net/",
    "https://dashboard.cascadesub.net/",
    "https://github.com/TensorLink-AI/cascade",
    "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/README.md",
    "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/llms.txt",
    "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/chain.toml",
    "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/docs/ARCHITECTURE.md",
    "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/docs/VALIDATOR.md",
    "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/docs/AUDIT.md",
    "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/docs/MARGIN_DECAY_ROLLOUT.md",
    "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/cascade/eval/koth.py",
    "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/cascade/eval/scoring.py",
    "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/cascade/interface/dedup.py",
    "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/cascade/validator/loop.py",
    "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/cascade/shared/chain.py",
    "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/decisions/DEC-CA-0039-increment-margin-activation.md",
    "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/decisions/DEC-CA-0043-rolling-intake-era-king.md",
    "https://raw.githubusercontent.com/TensorLink-AI/cascade/7ebfc19da3f21c5b78b402f85446647f166b14cc/decisions/DEC-CA-0045-stake-weighted-activation.md"
   ],
   "rank": 18,
   "emission_pct": "1.7%",
   "strength": 5
  },
  {
   "netuid": 110,
   "name": "Green Compute",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "inference",
   "fields": {
    "work": {
     "text": "Inference and GPU rental served from RTX 4090 or RTX 5090 nodes whose power is certified renewable and whose location is proven. The application checklist asks for eight-card nodes, a registered business, ISO 27001 or SOC 2 certificates, two 10 Gbps lines and staff on site around the clock. No task specification or protocol is published anywhere; there is no repository.",
     "trust": "docs",
     "url": "https://www.green-compute.com/providers",
     "quote": "Once verified, connect RTX 4090 or RTX 5090 nodes to Bittensor subnet 110."
    },
    "scoring": {
     "text": "Unknown. Looked for a scoring formula, validator code or an incentive document on the front page, the about, providers, enterprise and apply pages, in the chain identity (github_repo unset) and the index; found one sentence, that validators score performance, reliability and proof integrity, and a yield calculator that applies a 1.5x green multiplier. No repository, no endpoint, no document.",
     "trust": "unknown"
    },
    "split": {
     "text": "Unknown. Looked for how the miner share divides between miners on every site page, in the chain identity and in the index. The providers page says validators route demand by performance, reliability and attestation and that payouts come every epoch; nothing says whether the split is proportional, winner-heavy or floored. On the 2026-09-09 snapshot there was one active miner to divide it among.",
     "trust": "unknown"
    },
    "judges": {
     "text": "Thirteen validators were active on the 2026-09-09 chain snapshot, against one miner. Commit-reveal is off, weights at most once per 100 blocks. What the validators do is one sentence on the providers page: route inference demand and score performance, reliability and the integrity of the green-power attestation. Whether they re-run work, sample it or read a meter is not stated, and there is no code to read.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled False, weights_rate_limit 100; chain-2026-09-09.json active_validators 13, active_miners 1"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes; the site promises payouts every epoch and names no other round, window or challenge. A new registration is immune from deregistration for 5,000 blocks, about 16 hours. The registration burn was 0.0005 TAO on the 2026-09-09 snapshot, described on the apply page as non-refundable if onboarding fails.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000"
    },
    "buyer": {
     "text": "Enterprise teams paying in ordinary money, plus self-serve renters with a $5 minimum top-up. Prices are RTX 4090 from $0.40 and RTX 5090 from $0.70 per GPU hour, marked indicative, through an OpenAI-compatible endpoint. The front page claims $82,000 revenue in June 2026 and an $8,200 buyback with a wallet address. No customer is named outside testimonials.",
     "trust": "docs",
     "url": "https://www.green-compute.com/enterprise",
     "quote": "We sell inference. Enterprise grade, production ready, metered by the token."
    },
    "exploits": {
     "text": "No incident is recorded on any site page. The stated guard is admission: a carbon-registry attestation and a hardware location proof before a node is registered, with the registration burn lost if onboarding fails. Whether attestation is re-checked after admission, or what happens to a miner whose power turns out dirty, is not stated. Looked for gaming, sybil or abuse statements on every page and found none.",
     "trust": "docs",
     "url": "https://www.green-compute.com/providers",
     "quote": "The floor is simple: no proof, no payout."
    }
   },
   "sources": [
    "https://www.green-compute.com/",
    "https://www.green-compute.com/about",
    "https://www.green-compute.com/providers",
    "https://www.green-compute.com/enterprise",
    "https://www.green-compute.com/apply"
   ],
   "rank": 19,
   "emission_pct": "1.6%",
   "strength": 2
  },
  {
   "netuid": 75,
   "name": "Hippius",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "storage",
   "repo": {
    "url": "https://github.com/thenervelab/thebrain",
    "commit": "3187525a9317ff70f7157c930124e19858dfe235",
    "committed": "2026-09-09"
   },
   "fields": {
    "work": {
     "text": "Bytes held and bytes served. A miner runs a storage node with at least 2 TB behind a static public IP, keeps erasure-coded shards of customer files, answers cryptographic challenges that it still holds them, and serves reads. What is paid for is bandwidth delivered in the reporting window and shard data stored, as reported by validators on the Hippius chain.",
     "trust": "docs",
     "url": "https://docs.hippius.com/earn/storage-miner",
     "quote": "Miners participate in the Arion network by storing shards of encrypted user data and proving their storage continuously to the blockchain."
    },
    "scoring": {
     "text": "Per node: log2(bandwidth bytes + 1) weighted 70 percent plus log2(stored bytes + 1) weighted 30 percent, times uptime, minus 50 points per validator strike and 100 per integrity failure, capped at 50,000. Nodes roll up into families, one owner with many nodes: the top 10 count, each rank worth 80 percent of the one above, smoothed 30/70 against the previous value and clamped to a 100-point move per bucket.",
     "trust": "code",
     "path": "runtime/mainnet/src/lib.rs",
     "url": "https://raw.githubusercontent.com/thenervelab/thebrain/3187525a9317ff70f7157c930124e19858dfe235/runtime/mainnet/src/lib.rs",
     "quote": "NodeBandwidthWeightPermille: u32 = 700; NodeStorageWeightPermille: u32 = 300; StrikePenalty: u16 = 50; IntegrityFailPenalty: u16 = 100"
    },
    "split": {
     "text": "Proportional, of a sliver. The weight budget of 65,535 is split at a fixed ratio: 1 percent to storage miners, each family taking its weight over all families' weight, and 99 percent to UID 238, the Hippius validator account. A node offline past its buffer gets 0. A family seen for the first time is floored at weight 10 for 24 buckets.",
     "trust": "code",
     "path": "pallets/execution-unit/src/weight_calculation.rs",
     "url": "https://raw.githubusercontent.com/thenervelab/thebrain/3187525a9317ff70f7157c930124e19858dfe235/pallets/execution-unit/src/weight_calculation.rs",
     "quote": "let miners_pool = max_score * 0.01; // 1% to miners; let uid_238_pool = max_score - miners_pool; // 99% to uid 238",
     "disagrees": "The docs page learn/weights fetched 2026-09-19, and the summary at the top of readme_weights.md, say the miner pool grows with how much data the network stores relative to emissions; the code at the pinned commit and Layer 3 of the same readme fix it at 1 percent to miners and 99 percent to UID 238."
    },
    "judges": {
     "text": "Twelve validators were active on the 2026-09-09 chain snapshot. Commit-reveal is off. The judging happens on Hippius's own Substrate chain: its validators submit each node's quality metrics on chain, miners cannot self-report, and pallets compute family weights and a ranked list. A Bittensor validator runs a submitter script that reads that ranked list from the Hippius chain and sets it as weights. It relays; it does not re-run the work.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled False, weights_rate_limit 100, max_validators 64; chain-2026-09-09.json active_validators 12"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The program's own clock runs on the Hippius chain at 6-second blocks: node quality is bucketed every 300 blocks, family weights and rewards recalculate every 3,600 blocks, about 6 hours, and a storage miner silent for 3,000 blocks is zeroed. A new registration is immune from deregistration for 5,000 blocks, about 16 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000; readme_weights.md: Every BlocksPerEra (3,600 blocks = 6 hours at 6-second block time)"
    },
    "buyer": {
     "text": "Anyone with a credit card or TAO. S3-compatible storage costs $6.00 per TB per month pay as you go, billed hourly, down to $4.65 per TB on a 100 TB plan, egress included. Credits are minted on the Hippius chain at one dollar each; sign-up is Google or GitHub with no wallet. No customer is named and no revenue figure is given.",
     "trust": "docs",
     "url": "https://hippius.com/pricing",
     "quote": "All services are billed per use with credits (1 credit = $1), minted on our blockchain for full visibility."
    },
    "exploits": {
     "text": "Splitting one operation into many nodes: the family aggregation counts only an owner's top 10 nodes with 80 percent decay per rank, and the code names the reason, log2 of parts exceeding log2 of the whole. Claiming storage not held: validator challenges issue strikes and integrity failures that subtract directly. Going dark: a node past its heartbeat buffer is zeroed. Sudden jumps: a moving average and a 100-point clamp.",
     "trust": "code",
     "path": "pallets/arion-pallet/src/lib.rs",
     "url": "https://raw.githubusercontent.com/thenervelab/thebrain/3187525a9317ff70f7157c930124e19858dfe235/pallets/arion-pallet/src/lib.rs",
     "quote": "the same bytes across more children: log2(a) + log2(b) > log2(a+b)"
    }
   },
   "sources": [
    "https://docs.hippius.com/llms.txt",
    "https://docs.hippius.com/earn/storage-miner",
    "https://docs.hippius.com/learn/weights",
    "https://hippius.com/pricing",
    "https://hippius.com/why-hippius",
    "https://github.com/thenervelab/thebrain",
    "https://raw.githubusercontent.com/thenervelab/thebrain/3187525a9317ff70f7157c930124e19858dfe235/readme_weights.md",
    "https://raw.githubusercontent.com/thenervelab/thebrain/3187525a9317ff70f7157c930124e19858dfe235/incentives.md",
    "https://raw.githubusercontent.com/thenervelab/thebrain/3187525a9317ff70f7157c930124e19858dfe235/runtime/mainnet/src/lib.rs",
    "https://raw.githubusercontent.com/thenervelab/thebrain/3187525a9317ff70f7157c930124e19858dfe235/pallets/execution-unit/src/weight_calculation.rs",
    "https://raw.githubusercontent.com/thenervelab/thebrain/3187525a9317ff70f7157c930124e19858dfe235/pallets/bittensor/src/lib.rs",
    "https://raw.githubusercontent.com/thenervelab/thebrain/3187525a9317ff70f7157c930124e19858dfe235/pallets/arion-pallet/src/lib.rs",
    "https://raw.githubusercontent.com/thenervelab/thebrain/3187525a9317ff70f7157c930124e19858dfe235/vali-weights-submitter/README.md"
   ],
   "rank": 20,
   "emission_pct": "1.6%",
   "strength": 5
  },
  {
   "netuid": 58,
   "name": "greevils",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "agents",
   "repo": {
    "url": "https://github.com/greevils-ai/greevils-cli",
    "commit": "dd4decc28a3dcfc7883717625408dbc40229b9b5",
    "committed": "2026-07-06"
   },
   "fields": {
    "work": {
     "text": "A trading record. A miner is an account on Hyperliquid, a perpetuals exchange, trading its own money. It may be a human or an agent: a program packaged as a directory with entry.py, encrypted, and run inside a Confidential Space TEE the miner rents, trading through a local harness that holds a trade-only key. What is scored is the account's daily equity series.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/greevils-ai/greevils-cli/dd4decc28a3dcfc7883717625408dbc40229b9b5/README.md",
     "quote": "Your agent is a directory that MUST contain entry.py (the fixed entrypoint, run as python entry.py inside the TEE)"
    },
    "scoring": {
     "text": "A pairwise tournament. Every eligible account plays every other over the days both traded, floored at 30. On each overlap a utility U rewards compounded return and absolute profit and penalizes drawdown, downside volatility and profit concentrated in few days; G = (e^(1.5U) - 1)/(e^1.5 - 1), halved if trailing-30-day PnL is negative or recent volume is thin. The winner banks the margin; margins sum to the score.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/greevils-ai/greevils-validator/main/incentive.md",
     "quote": "U = ln(1 + R) + 0.08 * ln(1 + X / 1000) - 0.308 * (D / 0.10)^2",
     "disagrees": "The incentive document scores agents and humans in one tournament with a separate agent pool; the validator README says the agent classifier is not deployed, so the agent lane is inert and every account is classified human."
    },
    "split": {
     "text": "Proportional within two pools. Emission splits into a human pool and an agent pool; within each, weight is the pool share times the account's score over the pool's total score. The human pool is capped at emission worth one tenth of what the winning humans made that day, and never above half; agents take the rest. Anything unawarded burns to the burn UID.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/greevils-ai/greevils-validator/main/incentive.md",
     "quote": "human_share = min( 50% , k · human_PnL_$ / emission_value_$ ) # k = 0.1; agent_share = 1 − human_share"
    },
    "judges": {
     "text": "Five validators were active on the 2026-09-09 chain snapshot. Commit-reveal is on; weights may be set once per 100 blocks. A validator pulls each account's daily equity from Hyperliquid, verifies the on-chain commitment binding a hotkey to an account, checks every fill carries the builder fee, classifies, runs the tournament and sets weights. The highest-staked validator approves agent code by hand.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 100, yuma_version 3; chain-2026-09-09.json active_validators 5"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. Scoring runs once a day at 00:00 UTC on the daily equity snapshot; between rounds the validator re-sets the cached weight vector every epoch so it stays live in consensus. An account needs 60 days of runtime and 40 active days to be eligible. A new registration is immune for 5,000 blocks, about 16 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000; validator README: scoring then fires at 00:00 UTC each day, while weights are re-set every epoch"
    },
    "buyer": {
     "text": "Nobody. The site sells an arena, not a product: traders bring their own money, and the only money that changes hands beyond that is a builder fee of about 5 basis points on every fill routed through the Greevils app, stated in the validator README. No buyer of the agents, their signals or the scorecard is named on the site, in the app, or in the three repositories.",
     "trust": "read",
     "url": "https://www.greevils.ai",
     "quote": "Agents against the humans. Real money on the line."
    },
    "exploits": {
     "text": "Faking returns with deposits and withdrawals: the daily percent is flow-adjusted so a rescue deposit after a loss or a withdrawal after a profit can only lower it. Trading around the fee: any fill without the builder fee is permanent disqualification. One lucky day: a concentration penalty. Copying an agent: agents earn only once open-sourced and approved on chain by the top validator. The live leaderboard read empty on 2026-09-19.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/greevils-ai/greevils-validator/main/incentive.md",
     "quote": "You cannot game the % with flows. Any deposit/withdrawal can only lower your daily % versus the no-flow case"
    }
   },
   "sources": [
    "https://www.greevils.ai",
    "https://app.greevils.ai/leaderboard",
    "https://github.com/greevils-ai/greevils-cli",
    "https://raw.githubusercontent.com/greevils-ai/greevils-cli/dd4decc28a3dcfc7883717625408dbc40229b9b5/README.md",
    "https://raw.githubusercontent.com/greevils-ai/greevils-validator/main/incentive.md",
    "https://raw.githubusercontent.com/greevils-ai/greevils-validator/main/README.md",
    "https://raw.githubusercontent.com/greevils-ai/greevils-docs/main/README.md"
   ],
   "rank": 21,
   "emission_pct": "1.4%",
   "strength": 2
  },
  {
   "netuid": 38,
   "name": "ChronoLLM",
   "version": "1.0",
   "read_on": "2026-09-22",
   "commodity": "training",
   "repo": {
    "url": "https://github.com/chronollm/sn38",
    "commit": "a1f1aa75452e4e81aa75e3cafdfc1aa89b5be14f",
    "committed": "2026-09-22"
   },
   "fields": {
    "work": {
     "text": "A set of twelve language models, one per vintage year from 2013 to 2024, each trained only on text available up to its cutoff so it cannot know later events. Each is at most 2.2 billion parameters in safetensors, uploaded to Hugging Face and registered on chain. What is paid for is a slate that passes the leak test and wins text-completion duels.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/chronollm/sn38/a1f1aa75452e4e81aa75e3cafdfc1aa89b5be14f/README.md",
     "quote": "Each model must be trained only on data available up to its cutoff year. A model for 2018 must know nothing about 2019 or beyond."
    },
    "scoring": {
     "text": "Stage 1 is a gate: per year the model must recognise at least 70 percent of pre-cutoff items and at most 10 percent of post-cutoff ones, the year average must beat -3.0. Up to 30 survivors then duel round-robin: each writes completions for prompts a judge model invents fresh that round, and GPT-5.4 picks the winner per pair. Final score is leak_weight x normalised leak plus quality_weight x win rate.",
     "trust": "code",
     "path": "sn38/neurons/validator.py",
     "url": "https://raw.githubusercontent.com/chronollm/sn38/a1f1aa75452e4e81aa75e3cafdfc1aa89b5be14f/sn38/neurons/validator.py",
     "quote": "final_scores[uid] = leak_weight * normalized_leak[uid] + quality_weight * win_rates[uid]",
     "disagrees": "The code's fallback defaults at the pinned commit are leak_weight 0.7, quality_weight 0.3 and top_n_for_quality 10; api.chronollm.com/config, re-fetched 2026-09-22, still returns leak_weight 0.0, quality_weight 1.0 and top_n_for_quality 30, so the README's final_score = quality_win_rate is what runs."
    },
    "split": {
     "text": "Winner-heavy exponential decay. The top ten by final score are paid exp(-0.8 x rank^0.9) normalised to one, which gives about 52, 23, 12, 6, 3, 2, 1 percent and under, and rank eleven and below get nothing. An emission_pct below 1 sends the remainder to the owner UID; the live config has it at 1.0. The owner UID itself is excluded from the ranking.",
     "trust": "code",
     "path": "sn38/neurons/validator.py",
     "url": "https://raw.githubusercontent.com/chronollm/sn38/a1f1aa75452e4e81aa75e3cafdfc1aa89b5be14f/sn38/neurons/validator.py",
     "quote": "rewards = np.exp(-0.8 * (np.arange(n) ** 0.9))"
    },
    "judges": {
     "text": "Six validators were active on the 2026-09-09 chain snapshot, of 64 permitted. Commit-reveal is off; weights may change at most once per 100 blocks. A validator runs inside an Intel TDX enclave on Phala Cloud with an H200, fetches private evaluation data from the team's backend over attested TLS, downloads every model, re-runs the leak test and duels itself, sets weights once, and exits. The compose hash is publicly attestable.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled False, weights_rate_limit 100, max_validators 64; chain-2026-09-09.json active_validators 6"
    },
    "cadence": {
     "text": "Emission settles every 1,440 blocks, about 4.8 hours, four times the usual tempo. The puzzle turns weekly: a round opens every Monday at 12:00 UTC, all prior submissions are wiped, miners resubmit, and validators evaluate the previous round once. A new registration is immune from deregistration for 50,400 blocks, about a week, ten times the usual 5,000.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 1440, immunity_period 50400"
    },
    "buyer": {
     "text": "Quants and researchers, on three tiers with no price. Individual: full weights free to download and self-host. Academic research: free hosted API for non-commercial work behind a request form. Institutional: on-premises deployment fine-tuned on the buyer's data, with support and SLAs, priced to the deployment via a contact form. No customer of the subnet's output is named and no usage figure appears.",
     "trust": "docs",
     "url": "https://chronollm.com/",
     "quote": "The full model, free to download and run on your own hardware."
    },
    "exploits": {
     "text": "Copying a rival's weights: an identical checksum is rejected and the first submitter keeps priority; near-copies are caught pairwise by SVD spectral distance under 0.001, weight cosine over 0.95 or logit KL under 1.0, invariant to rotation, permutation and scaling. Overfitting the leak set: it stays inside the enclave, and duel prompts are invented fresh each round. Stale models: the slate is wiped every Monday.",
     "trust": "code",
     "path": "sn38/template/svd_gate.py",
     "url": "https://raw.githubusercontent.com/chronollm/sn38/a1f1aa75452e4e81aa75e3cafdfc1aa89b5be14f/sn38/template/svd_gate.py",
     "quote": "SVD_THRESHOLD = 0.001 ... COSINE_THRESHOLD = 0.95 ... KL_THRESHOLD = 1.0"
    }
   },
   "sources": [
    "https://chronollm.com/",
    "https://api.chronollm.com/config",
    "https://leaderboard.chronollm.com/",
    "https://github.com/chronollm/sn38",
    "https://raw.githubusercontent.com/chronollm/sn38/a1f1aa75452e4e81aa75e3cafdfc1aa89b5be14f/README.md",
    "https://raw.githubusercontent.com/chronollm/sn38/a1f1aa75452e4e81aa75e3cafdfc1aa89b5be14f/docs/miner.md",
    "https://raw.githubusercontent.com/chronollm/sn38/a1f1aa75452e4e81aa75e3cafdfc1aa89b5be14f/docs/validator.md",
    "https://raw.githubusercontent.com/chronollm/sn38/a1f1aa75452e4e81aa75e3cafdfc1aa89b5be14f/sn38/neurons/validator.py",
    "https://raw.githubusercontent.com/chronollm/sn38/a1f1aa75452e4e81aa75e3cafdfc1aa89b5be14f/sn38/template/constants.py",
    "https://raw.githubusercontent.com/chronollm/sn38/a1f1aa75452e4e81aa75e3cafdfc1aa89b5be14f/sn38/template/quality.py",
    "https://raw.githubusercontent.com/chronollm/sn38/a1f1aa75452e4e81aa75e3cafdfc1aa89b5be14f/sn38/template/leak.py",
    "https://raw.githubusercontent.com/chronollm/sn38/a1f1aa75452e4e81aa75e3cafdfc1aa89b5be14f/sn38/template/dedup.py",
    "https://raw.githubusercontent.com/chronollm/sn38/a1f1aa75452e4e81aa75e3cafdfc1aa89b5be14f/sn38/template/svd_gate.py",
    "https://raw.githubusercontent.com/chronollm/sn38/a1f1aa75452e4e81aa75e3cafdfc1aa89b5be14f/sn38/template/tee.py"
   ],
   "rank": 22,
   "emission_pct": "1.4%",
   "strength": 5
  },
  {
   "netuid": 56,
   "name": "Gradients",
   "version": "1.0",
   "read_on": "2026-09-22",
   "commodity": "training",
   "repo": {
    "url": "https://github.com/gradients-ai/G.O.D",
    "commit": "0791bb6e345533cae8088ffcc4d214c70c22efaf",
    "committed": "2026-09-22"
   },
   "fields": {
    "work": {
     "text": "Training code: a GitHub repository and commit, served from a small miner endpoint, that validators build in a container and run on their own GPUs to fine-tune a model on a task. The miner supplies no compute, pays 0.4 to 0.7 TAO to enter a weekly tournament, and a winning repository is republished in public.",
     "trust": "code",
     "path": "docs/miner.md",
     "url": "https://raw.githubusercontent.com/gradients-ai/G.O.D/0791bb6e345533cae8088ffcc4d214c70c22efaf/docs/miner.md",
     "quote": "Tournament miners submit training code. Validators clone your submitted repository at the commit you provide, build your Docker image, run your training script"
    },
    "scoring": {
     "text": "Round one is a single group of every entrant playing three instruct tasks; the top two advance to a knockout, whose winner meets the reigning champion in a six-task boss round. Two entries train the same model on the same task; the winner wins more held-out samples, ties inside 0.01 nats counting for neither, mean loss deciding equal counts. GRPO tasks rank on mean score. Duplicates are eliminated in tiers.",
     "trust": "code",
     "path": "docs/miner.md",
     "url": "https://raw.githubusercontent.com/gradients-ai/G.O.D/0791bb6e345533cae8088ffcc4d214c70c22efaf/docs/miner.md",
     "quote": "Knockout instruct, DPO and chat tasks are decided per held-out sample, not on mean loss."
    },
    "split": {
     "text": "Winner-heavy per pool. Emission divides into text, image and environment pools anchored at 0.35, 0.25 and 0.25, rebalanced by participation with a 0.05 floor and 0.50 cap. Inside a pool the top three ranks are paid by exponential decay with base 0.25, about 76, 19 and 5 percent; a champion whose boss-round margin passes 0.10 has the excess doubled. Every participant gets 0.0001.",
     "trust": "code",
     "path": "validator/scoring/constants.py",
     "url": "https://raw.githubusercontent.com/gradients-ai/G.O.D/0791bb6e345533cae8088ffcc4d214c70c22efaf/validator/scoring/constants.py",
     "quote": "TOURNAMENT_PAID_RANKS = 3; TOURNAMENT_SIMPLE_DECAY_BASE = 0.25; TOURNAMENT_PARTICIPATION_WEIGHT = 0.0001",
     "disagrees": "docs/miner.md says emissions split between champions and participants and nothing is burned; validator/scoring/weights.py agrees and rescales the three pools to fill the whole pie; validator/scoring/emission_balance.py at the same commit says anything shaved off the 0.50 cap falls through to burn. EMISSION_BURN_HOTKEY is a placeholder for a champion that defended, resolved to the real hotkey before scoring."
    },
    "judges": {
     "text": "Twelve validators were active on the 2026-09-09 chain snapshot. Commit-reveal is off. Validators do the work themselves: they build each entry, run the training on validator-managed GPUs, upload the model and score it against its opponent on a held-out set. Completion is manual: the team reads the winning code for exploits before a tournament is marked complete, with a Friday 14:00 UTC deadline.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled False, weights_rate_limit 100; chain-2026-09-09.json active_validators 12"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The puzzle turns weekly per pool: environment tournaments start Monday 09:00 UTC, text 11:00, image 13:00, only when no tournament of that type is active, and each must complete by Friday 14:00 UTC. A champion's weight does not decay between tournaments. A new registration is immune from deregistration for 5,000 blocks, about 16 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000"
    },
    "buyer": {
     "text": "Anyone with a model and a dataset, by the hour, through the site or one API call to api.gradients.io/v1/tasks/create. The rate card, read from SKILL.md because the pricing page loads only with JavaScript, runs $10 to $50 an hour by text model size and $5 an hour for image models. No customer or usage figure is published; the last news post is from November 2025.",
     "trust": "code",
     "path": "SKILL.md",
     "url": "https://raw.githubusercontent.com/gradients-ai/G.O.D/0791bb6e345533cae8088ffcc4d214c70c22efaf/SKILL.md",
     "quote": "<=1B text: $10/hour; <=7B text: $15/hour; <=40B text: $25/hour; >40B text: $50/hour; image: $5/hour"
    },
    "exploits": {
     "text": "One entry under many identities: submissions are de-duplicated in three tiers, identical commit, identical source after normalisation, and a Claude pairwise review of deltas, with cosmetic disguises counted as duplicates and eliminated. Hidden datasets, pretrained weights, compiled or obfuscated code are banned. One hotkey per coldkey per tournament. Before a tournament closes the team reads the winning code for exploits, a manual step.",
     "trust": "code",
     "path": "docs/miner.md",
     "url": "https://raw.githubusercontent.com/gradients-ai/G.O.D/0791bb6e345533cae8088ffcc4d214c70c22efaf/docs/miner.md",
     "quote": "the team reviews the winning submission's code to check for exploits and confirm it reflects a genuine training improvement"
    }
   },
   "sources": [
    "https://www.gradients.io/",
    "https://www.gradients.io/pricing",
    "https://api.gradients.io/docs",
    "https://api.gradients.io/tournament/fees",
    "https://github.com/gradients-ai/G.O.D",
    "https://raw.githubusercontent.com/gradients-ai/G.O.D/0791bb6e345533cae8088ffcc4d214c70c22efaf/docs/miner.md",
    "https://raw.githubusercontent.com/gradients-ai/G.O.D/0791bb6e345533cae8088ffcc4d214c70c22efaf/validator/scoring/constants.py",
    "https://raw.githubusercontent.com/gradients-ai/G.O.D/0791bb6e345533cae8088ffcc4d214c70c22efaf/README.md",
    "https://raw.githubusercontent.com/gradients-ai/G.O.D/0791bb6e345533cae8088ffcc4d214c70c22efaf/SKILL.md",
    "https://raw.githubusercontent.com/gradients-ai/G.O.D/0791bb6e345533cae8088ffcc4d214c70c22efaf/validator/tournament/constants.py",
    "https://raw.githubusercontent.com/gradients-ai/G.O.D/0791bb6e345533cae8088ffcc4d214c70c22efaf/validator/scoring/emission_balance.py"
   ],
   "rank": 23,
   "emission_pct": "1.4%",
   "strength": 7
  },
  {
   "netuid": 118,
   "name": "Ditto",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "agents",
   "repo": {
    "url": "https://github.com/ditto-assistant/ditto-subnet",
    "commit": "2b05b32b4f0b76e967b302c5a0bd0742207b4719",
    "committed": "2026-09-19"
   },
   "fields": {
    "work": {
     "text": "A memory harness: the software that decides what an AI assistant stores, finds again and which tools it calls, with the language model held fixed. The miner packages it as a Docker build context serving a fixed HTTP contract and submits it for a platform-set fee, 0.1 TAO in the guide at this commit. Validators run it; the miner needs no hardware.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/ditto-assistant/ditto-subnet/2b05b32b4f0b76e967b302c5a0bd0742207b4719/README.md",
     "quote": "Miners submit a Docker build context that serves the public harness HTTP contract; the implementation may use Rust, Python, TypeScript, Go, or any other language."
    },
    "scoring": {
     "text": "Validators run the harness in a sandbox against a dataset regenerated from a seed every run: tool-calling cases and a memory haystack with distractors. Every harness is driven by the same locked model. Grading is by rule, no model as judge: composite = 0.5 tool accuracy + 0.5 memory recall, times bounded efficiency, consistency and canary gates. Finalized on the median across assigned validators; 100 eligible cases per entry minimum.",
     "trust": "docs",
     "url": "https://heyditto.ai/docs/mining-scoring",
     "quote": "composite = (0.5 × tool_mean + 0.5 × memory_mean) × efficiency × consistency × canary",
     "disagrees": "The site scoring page, updated 2026-07-13, says the locked model is Qwen3-32B; docs/MINER.md at the pinned commit says the current contract, Bench v12, is openai/gpt-oss-20b served through the platform's OpenRouter boundary."
    },
    "split": {
     "text": "King of the hill with a tail. The champion takes 65 percent of the miner weight, the next four distinct miners 14, 10, 7 and 4, ordered by first-seen on ties. A challenger dethrones only by beating the champion by more than the larger of 0.007 composite points and 1.64 combined standard errors, on a median of 3 seeds. With no eligible miner, everything goes to the burn hotkey.",
     "trust": "code",
     "path": "ditto/validator/config.py",
     "url": "https://raw.githubusercontent.com/ditto-assistant/ditto-subnet/2b05b32b4f0b76e967b302c5a0bd0742207b4719/ditto/validator/config.py",
     "quote": "KOTH_RANK_SHARES = (0.65, 0.14, 0.10, 0.07, 0.04); KOTH_MARGIN = 0.007; KOTH_DETHRONE_Z = 1.64",
     "disagrees": "The site scoring page dated 2026-07-13 says the champion holds about 90 percent of emissions and the dethroning margin is about 5 percent; the repository at the pinned commit sets 65/14/10/7/4 and a 0.007 gate, and docs/MINER.md matches the code."
    },
    "judges": {
     "text": "Eleven validators were active on the 2026-09-09 chain snapshot. Commit-reveal is on. The platform's ledger assigns each submission to validators, who pull the screened image, run it in a sandbox and post signed scores; the ledger finalizes on the median and every validator recomputes the same weight vector from it with the same function. Weights go on chain through Pylon, an identity-based weight-setting service.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 100, max_validators 64; chain-2026-09-09.json active_validators 11"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The validator sweeps the ledger every 30 seconds and pushes weights every 3,600 seconds. The puzzle turns per submission, not per epoch: a crown stands until a challenger clears the gate. A new registration is immune from deregistration for only 300 blocks, one hour, against the 5,000 most subnets use.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 300; config.py VALIDATOR_EPOCH_SECONDS default 3600, VALIDATOR_SWEEP_SECONDS default 30"
    },
    "buyer": {
     "text": "End users of the Ditto app, paying per message in credits after 30 free messages, with no price table. The numbers page dated 2026-09-06 gives 2,505 registered users, 267 monthly active and an annual run rate of $6,648. Whether the winning harness runs inside the product is not stated on the pages fetched. The miner's income is emission.",
     "trust": "docs",
     "url": "https://heyditto.ai/dashboard/",
     "quote": "Monthly active 267 last 30 days ARR $6,648 current run rate"
    },
    "exploits": {
     "text": "Memorizing the benchmark: the dataset is rebuilt from a seed every run, with the bench version mixed in. Self-reporting tool calls instead of hitting the grader's mock server: capped at 0.5 on those cases. Echoing a planted bait value: composite times 0.5. Copying the champion: first-seen timestamps plus near-duplicate detection, copies earn nothing. Dethroning on seed luck: the z-band and a 3-seed median.",
     "trust": "docs",
     "url": "https://heyditto.ai/docs/mining-scoring",
     "quote": "a harness that skips the server and self-reports its calls is capped at 0.5 on the affected cases"
    }
   },
   "sources": [
    "https://heyditto.ai/docs/mining-scoring",
    "https://heyditto.ai/pricing/",
    "https://heyditto.ai/dashboard/",
    "https://github.com/ditto-assistant/ditto-subnet",
    "https://raw.githubusercontent.com/ditto-assistant/ditto-subnet/2b05b32b4f0b76e967b302c5a0bd0742207b4719/README.md",
    "https://raw.githubusercontent.com/ditto-assistant/ditto-subnet/2b05b32b4f0b76e967b302c5a0bd0742207b4719/docs/MINER.md",
    "https://raw.githubusercontent.com/ditto-assistant/ditto-subnet/2b05b32b4f0b76e967b302c5a0bd0742207b4719/docs/VALIDATOR.md",
    "https://raw.githubusercontent.com/ditto-assistant/ditto-subnet/2b05b32b4f0b76e967b302c5a0bd0742207b4719/ditto/validator/weights.py",
    "https://raw.githubusercontent.com/ditto-assistant/ditto-subnet/2b05b32b4f0b76e967b302c5a0bd0742207b4719/ditto/validator/config.py",
    "https://raw.githubusercontent.com/ditto-assistant/ditto-subnet/2b05b32b4f0b76e967b302c5a0bd0742207b4719/ditto/validator/tracks.py",
    "https://raw.githubusercontent.com/ditto-assistant/ditto-subnet/2b05b32b4f0b76e967b302c5a0bd0742207b4719/ditto/validator/worker.py"
   ],
   "rank": 24,
   "emission_pct": "1.2%",
   "strength": 3
  },
  {
   "netuid": 124,
   "name": "Swarm",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "training",
   "repo": {
    "url": "https://github.com/swarm-subnet/swarm",
    "commit": "fce8d303fc74d8d9d0731599a43964096a0b5d35",
    "committed": "2026-09-17"
   },
   "fields": {
    "work": {
     "text": "A trained flight policy for a simulated Crazyflie quadcopter: a model that reads a depth camera and the drone's state and outputs control, packaged as an archive. The miner commits the archive's digest on chain, uploads it to the Swarm backend, and exits. Five mission families are active; a model that never wins stays in the backend's vault and is never published.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/swarm-subnet/swarm/fce8d303fc74d8d9d0731599a43964096a0b5d35/README.md",
     "quote": "Anyone can train a drone pilot, submit it, and watch it compete on a public leaderboard across thousands of fresh worlds it has never seen."
    },
    "scoring": {
     "text": "Every validator flies each submitted policy through the same 1,000 secret seeds per family per epoch and scores each flight 0.45 for reaching the goal, 0.45 for time against a target with a 6 percent buffer, 0.10 for obstacle clearance, clamped to 0 to 1; a crash, tilt, timeout or infeasible run scores 0.01. The seed key is published after the epoch so anyone can rebuild the worlds.",
     "trust": "code",
     "path": "swarm/validator/reward.py",
     "url": "https://raw.githubusercontent.com/swarm-subnet/swarm/fce8d303fc74d8d9d0731599a43964096a0b5d35/swarm/validator/reward.py",
     "quote": "score = 0.45 * success_term + 0.45 * time_term + 0.10 * safety_term; PARTICIPATION_REWARD = 0.01"
    },
    "split": {
     "text": "King of the hill per family, not winner take all. Each family holds a fixed slice: Office Interceptor 30 percent, Swarm Autopilot 20, Swarm Search and Rescue 20, Autopilot 15, Search and Rescue 15. Within a family the last five crowned kings share the slice on a ladder, each older seat keeping 0.7 of the seat above, scaled up to 1.3 by improvement. An empty slice burns to UID 0.",
     "trust": "code",
     "path": "swarm/validator/koth.py",
     "url": "https://raw.githubusercontent.com/swarm-subnet/swarm/fce8d303fc74d8d9d0731599a43964096a0b5d35/swarm/validator/koth.py",
     "quote": "WINDOW_SIZE: int = 5; RESERVED_BURN_UID: int = 0; RANK_LADDER_RATIO: float = 0.7; GAIN_BONUS: float = 0.3; GAIN_BONUS_CAP: float = 1.0"
    },
    "judges": {
     "text": "Ten validators were active on the 2026-09-09 chain snapshot. Commit-reveal is on; weights may be set once per 100 blocks. Each validator runs the full 1,000-seed benchmark itself, generating its own seeds with the system random source and publishing them after the epoch; it then refreshes the king windows from the backend, recomputes the ladder weights locally, and sets them on chain.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 100, max_validators 64; chain-2026-09-09.json active_validators 10"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The benchmark epoch is 14 days from epoch 19, anchored Monday 16:00 UTC, with 1,000 fresh seeds per family; submissions freeze for the final 5,400 seconds, 1.5 hours, of each epoch. A crown turns whenever a challenger clears the floor, and every champion is re-evaluated on the new epoch's seeds. A new registration is immune for 5,000 blocks.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000; constants.py EPOCH_DURATION_LONG_SECONDS = 14 * 86400, EPOCH_FREEZE_SECONDS = 5400"
    },
    "buyer": {
     "text": "Nobody is named. The site calls Swarm the lab for autonomous drone AI, lists sectors from warehouses to defence, and offers model adapters for airframes and sensors, but names no customer, price, endpoint or way to buy; the way in is a contact form. No pricing page, API reference or customer statement was found on the site or in the repository.",
     "trust": "read",
     "url": "https://swarm124.com/",
     "quote": "Our open benchmark accelerates model development, while our physical lab turns leading flight policies into deployable, end-to-end systems."
    },
    "exploits": {
     "text": "Copycat models are the named problem: under winner take all a miner could clone the champion, add noise to clear the floor, and take everything. The answer is the five-king ladder, a crowning floor of 0.015 that decays to 0.005 as scores near 1.0, refusal at upload of an archive whose code and weights match an existing submission, secret seeds while the epoch runs, and a fresh hotkey per crowning.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/swarm-subnet/swarm/fce8d303fc74d8d9d0731599a43964096a0b5d35/docs/king_of_the_hill.md",
     "quote": "a miner can clone the current champion, add just enough noise to clear the crowning floor, and take 100% of emissions"
    }
   },
   "sources": [
    "https://swarm124.com/",
    "https://github.com/swarm-subnet/swarm",
    "https://raw.githubusercontent.com/swarm-subnet/swarm/fce8d303fc74d8d9d0731599a43964096a0b5d35/README.md",
    "https://raw.githubusercontent.com/swarm-subnet/swarm/fce8d303fc74d8d9d0731599a43964096a0b5d35/swarm/validator/reward.py",
    "https://raw.githubusercontent.com/swarm-subnet/swarm/fce8d303fc74d8d9d0731599a43964096a0b5d35/swarm/validator/koth.py",
    "https://raw.githubusercontent.com/swarm-subnet/swarm/fce8d303fc74d8d9d0731599a43964096a0b5d35/swarm/constants.py",
    "https://raw.githubusercontent.com/swarm-subnet/swarm/fce8d303fc74d8d9d0731599a43964096a0b5d35/miner/docs/miner.md",
    "https://raw.githubusercontent.com/swarm-subnet/swarm/fce8d303fc74d8d9d0731599a43964096a0b5d35/docs/king_of_the_hill.md"
   ],
   "rank": 25,
   "emission_pct": "1.2%",
   "strength": 4
  },
  {
   "netuid": 61,
   "name": "RedTeam",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "security",
   "repo": {
    "url": "https://github.com/RedTeamSubnet/RedTeam",
    "commit": "593cbaa51f8417d8daf6ecde41a32ca2a7e15623",
    "committed": "2026-09-19"
   },
   "fields": {
    "work": {
     "text": "Code that solves a security challenge. Two are active at this commit: bot_virus_v1, a bot that spreads across a test network, and ada_detection_v3, detecting commercial anti-detect browsers. A miner packages the solution as a Docker image, commits an encrypted pointer on chain, and it is revealed after 24 hours. What is paid for is a solution that scores above the previous best and is not a copy.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/RedTeamSubnet/RedTeam/593cbaa51f8417d8daf6ecde41a32ca2a7e15623/README.md",
     "quote": "The subnet incentivizes miners to develop and submit code solutions to various technical challenges, with a focus on enhancing security."
    },
    "scoring": {
     "text": "Per challenge, the validator runs the submission in a sandbox and gives a raw score from 0 to 1 against the previous best; below the challenge minimum, 0.85 for bot_virus_v1 and 0.5 for ada_detection_v3, it is not accepted. The penalty is the highest code-similarity score against other submissions. The final score is raw less penalty by a scoring algorithm, then decays linearly over 14 days.",
     "trust": "docs",
     "url": "https://docs.theredteam.io/latest/",
     "quote": "points decaying linearly over a 14-day period",
     "disagrees": "The docs root and the repository's docs/README.md say points decay linearly over 14 days; the dashboard concept page says decay starts once a submission is 10 days old and runs over approximately 10 to 15 days; the per-challenge managers that apply the decay run inside the challenge Docker images and are not in the repository."
    },
    "split": {
     "text": "Proportional within each challenge, then weighted across challenges: ada_detection_v3 carries 0.6 of the miner share and bot_virus_v1 0.4. Within a challenge each miner's decayed final score is normalised over all miners and only the best entry per entity is kept. A challenge with no scores has its weight redistributed to the others in proportion. No burn is applied in the code at this commit.",
     "trust": "code",
     "path": "src/redteam_core/challenge_pool/active_challenges.yaml",
     "url": "https://raw.githubusercontent.com/RedTeamSubnet/RedTeam/593cbaa51f8417d8daf6ecde41a32ca2a7e15623/src/redteam_core/challenge_pool/active_challenges.yaml",
     "quote": "challenge_incentive_weight: 0.6"
    },
    "judges": {
     "text": "Eleven validators were active on the 2026-09-09 chain snapshot, of 64 permitted. Weights are committed then revealed, at most once per 100 blocks. A validator decrypts each commit after 24 hours, pulls the miner's Docker image, runs it against the challenge container in its own sandbox with 4 CPUs and 12 GB, and calls a challenge scoring API. The loop that calls set_weights is not in the repository.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 100, max_validators 64; chain-2026-09-09.json active_validators 11"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The validator's own epoch is 1,200 seconds, 20 minutes, and a commit is scored only once it is 24 hours old, the commit cooldown, so a new submission enters scoring a day after it lands. Submissions are scored once a day and a score fades over about two weeks. A new registration is immune from deregistration for 14,400 blocks, about 48 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 14400"
    },
    "buyer": {
     "text": "Nobody today. The front page promises a library of security solutions accessible to enterprises and the README says solutions can be integrated into real-world products, but there is no product page, API, price or named customer, and the site's copyright reads 2024. The miner's income is emission.",
     "trust": "read",
     "url": "https://www.theredteam.io/",
     "quote": "A secure platform for 'red team' actors to earn TAO while competing against the best minds in the industry."
    },
    "exploits": {
     "text": "Copying: the penalty is the highest similarity to any other submission, past or same-day, identical re-submissions are rejected, and commits stay encrypted for 24 hours so a rival cannot copy inside the window. Many hotkeys for one operator: submissions sharing an IP, a Docker Hub username or a coldkey are grouped and only the best is paid. An earlier alpha-burn weight in the scoring is commented out.",
     "trust": "code",
     "path": "src/redteam_core/validator/miner_manager.py",
     "url": "https://raw.githubusercontent.com/RedTeamSubnet/RedTeam/593cbaa51f8417d8daf6ecde41a32ca2a7e15623/src/redteam_core/validator/miner_manager.py",
     "quote": "Keep only the best-scoring submission among miners that are considered the same entity."
    }
   },
   "sources": [
    "https://www.theredteam.io/",
    "https://docs.theredteam.io/latest/",
    "https://docs.theredteam.io/latest/challenges/",
    "https://docs.theredteam.io/latest/miner/concepts/dashboard/",
    "https://docs.theredteam.io/latest/getting-started/miner/",
    "https://github.com/RedTeamSubnet/RedTeam",
    "https://raw.githubusercontent.com/RedTeamSubnet/RedTeam/593cbaa51f8417d8daf6ecde41a32ca2a7e15623/README.md",
    "https://raw.githubusercontent.com/RedTeamSubnet/RedTeam/593cbaa51f8417d8daf6ecde41a32ca2a7e15623/src/redteam_core/validator/miner_manager.py",
    "https://raw.githubusercontent.com/RedTeamSubnet/RedTeam/593cbaa51f8417d8daf6ecde41a32ca2a7e15623/src/redteam_core/validator/challenge_manager.py",
    "https://raw.githubusercontent.com/RedTeamSubnet/RedTeam/593cbaa51f8417d8daf6ecde41a32ca2a7e15623/src/redteam_core/challenge_pool/active_challenges.yaml",
    "https://raw.githubusercontent.com/RedTeamSubnet/RedTeam/593cbaa51f8417d8daf6ecde41a32ca2a7e15623/src/redteam_core/config/main.py"
   ],
   "rank": 26,
   "emission_pct": "1.2%",
   "strength": 4
  },
  {
   "netuid": 83,
   "name": "CliqueAI",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "other",
   "repo": {
    "url": "https://github.com/toptensor/CliqueAI",
    "commit": "0d3488ab808ee95bd350712ab99c2dc564f7a904",
    "committed": "2026-07-22"
   },
   "fields": {
    "work": {
     "text": "A clique: a set of vertices in a validator-supplied graph in which every pair is connected, returned inside a time limit of 6 to 30 seconds. Graphs are general, 290 to 900 vertices in the code. Problems come from the validators' own database, each served at most once across all validators; no outside party supplies a graph.",
     "trust": "code",
     "path": "docs/mechanism.md",
     "url": "https://raw.githubusercontent.com/toptensor/CliqueAI/0d3488ab808ee95bd350712ab99c2dc564f7a904/docs/mechanism.md",
     "quote": "A `solution` is a set of vertices"
    },
    "scoring": {
     "text": "Validity first: an invalid or non-maximal clique scores zero. Optimality is exp of minus the share of miners with a larger clique divided by the miner's size relative to the round's largest, normalised to the round's best. Diversity is one over the count of miners returning the identical vertex set, normalised. The final score is optimality times one plus difficulty, plus diversity.",
     "trust": "code",
     "path": "CliqueAI/scoring/clique_scoring.py",
     "url": "https://raw.githubusercontent.com/toptensor/CliqueAI/0d3488ab808ee95bd350712ab99c2dc564f7a904/CliqueAI/scoring/clique_scoring.py",
     "quote": "rewards = optimality * (1 + self.difficulty) + diversity",
     "disagrees": "docs/mechanism.md gives three problem classes at difficulty 0.2, 0.4 and 1; CliqueAI/selection/problem_selector.py at the same commit ships four classes at 0.7, 0.8, 0.9 and 1.0, the fourth at 890 to 900 vertices."
    },
    "split": {
     "text": "Top-heavy, not proportional. Per-problem scores fold into a debiased exponential moving average with alpha 0.01, a half-life of about 69 samples. At weight time the averages are min-max normalised, passed through a sigmoid centred on the median with the interquartile range as steepness, then raised to a power chosen so the top half of miners takes 80 percent of the weight.",
     "trust": "code",
     "path": "common/base/validator.py",
     "url": "https://raw.githubusercontent.com/toptensor/CliqueAI/0d3488ab808ee95bd350712ab99c2dc564f7a904/common/base/validator.py",
     "quote": "POWER_TARGET_TOP_HALF_SHARE: float = 0.80"
    },
    "judges": {
     "text": "Seven validators were active on the 2026-09-09 chain snapshot, against 232 miners. Commit-reveal is off. A validator checks each answer itself, that it is a valid maximal clique in the graph it sent, so judging is verification rather than re-running. Each eligible miner is sampled with the same probability, lowered for harder problems, after validator hotkeys and recently updated miners are filtered out.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled False, weights_version 1; chain-2026-09-09.json active_validators 7, active_miners 232"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes, and the validator sets weights every 361 blocks by default. Problems are dispatched continuously, one at a time, with time limits sampled from 6 to 30 seconds. A new registration is immune from deregistration for 6,000 blocks, about 20 hours. The repository's last commit is 2026-07-22.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 6000"
    },
    "buyer": {
     "text": "Unknown. Looked for a customer, a price or a way to submit a graph on cliqueai.toptensor.ai, which is a title and an empty shell to a fetcher, in the README, docs/mechanism.md, min_compute.yml, the wandb table link, the chain identity and the narrative map; found none. The only paying party is emission.",
     "trust": "unknown"
    },
    "exploits": {
     "text": "Copying another miner's answer: identical vertex sets split the diversity credit, one over the count of miners returning them. Memorising answers: each problem is served at most once, even across validators. Invalid or non-maximal cliques score zero. Recently updated miners and validator hotkeys are excluded from sampling. No incident is recorded in the repository or on the site.",
     "trust": "code",
     "path": "CliqueAI/scoring/clique_scoring.py",
     "url": "https://raw.githubusercontent.com/toptensor/CliqueAI/0d3488ab808ee95bd350712ab99c2dc564f7a904/CliqueAI/scoring/clique_scoring.py",
     "quote": "unq = np.array([1 / counts[sol] for sol in canonical_responses])"
    }
   },
   "sources": [
    "https://cliqueai.toptensor.ai/",
    "https://github.com/toptensor/CliqueAI",
    "https://raw.githubusercontent.com/toptensor/CliqueAI/0d3488ab808ee95bd350712ab99c2dc564f7a904/README.md",
    "https://raw.githubusercontent.com/toptensor/CliqueAI/0d3488ab808ee95bd350712ab99c2dc564f7a904/docs/mechanism.md",
    "https://raw.githubusercontent.com/toptensor/CliqueAI/0d3488ab808ee95bd350712ab99c2dc564f7a904/min_compute.yml",
    "https://raw.githubusercontent.com/toptensor/CliqueAI/0d3488ab808ee95bd350712ab99c2dc564f7a904/CliqueAI/scoring/clique_scoring.py",
    "https://raw.githubusercontent.com/toptensor/CliqueAI/0d3488ab808ee95bd350712ab99c2dc564f7a904/CliqueAI/selection/problem_selector.py",
    "https://raw.githubusercontent.com/toptensor/CliqueAI/0d3488ab808ee95bd350712ab99c2dc564f7a904/CliqueAI/selection/miner_selector.py",
    "https://raw.githubusercontent.com/toptensor/CliqueAI/0d3488ab808ee95bd350712ab99c2dc564f7a904/common/base/validator.py",
    "https://raw.githubusercontent.com/toptensor/CliqueAI/0d3488ab808ee95bd350712ab99c2dc564f7a904/common/utils/config.py",
    "https://raw.githubusercontent.com/toptensor/CliqueAI/0d3488ab808ee95bd350712ab99c2dc564f7a904/CliqueAI/validator.py"
   ],
   "rank": 27,
   "emission_pct": "1.1%",
   "strength": 6
  },
  {
   "netuid": 5,
   "name": "Hone",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "data",
   "repo": {
    "url": "https://github.com/hone-subnet-org/hone-subnet",
    "commit": "34de7f646002a1d2fea96451aa2f1091fcbe0c13",
    "committed": "2026-08-24"
   },
   "fields": {
    "work": {
     "text": "A program that solves a coding problem. A validator posts a signed task to the miner's HTTP endpoint and the miner returns a Python or Rust solution before the deadline. The included demo miner forwards the task to a hosted GLM-5.2 model. What is paid for is a solution that passes every hidden test case, which the miner never sees.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/hone-subnet-org/hone-subnet/34de7f646002a1d2fea96451aa2f1091fcbe0c13/README.md",
     "quote": "Validators lease a public coding challenge, rotation-deal it to half of the serving miners, commit the signed responses, reveal the hidden tests"
    },
    "scoring": {
     "text": "All or nothing, then speed. The validator commits the exact signed answers to the problem server before it may see the hidden cases, then runs each answer in a one-CPU, 256 MiB Docker container with no network. The fastest fully correct answer is paid 1.0; every three minutes of extra latency halves the part above 0.95. Anything short of the full suite pays 0. Peer pass rates do not matter.",
     "trust": "code",
     "path": "rlvr/scoring/payment.py",
     "url": "https://raw.githubusercontent.com/hone-subnet-org/hone-subnet/34de7f646002a1d2fea96451aa2f1091fcbe0c13/rlvr/scoring/payment.py",
     "quote": "DEFAULT_SPEED_HALF_LIFE_MS = 180_000.0; DEFAULT_SPEED_FLOOR = 0.95"
    },
    "split": {
     "text": "Proportional. A miner's score is the mean of its last 200 completed-problem payments, with a floor divisor of 4 so a couple of early wins cannot show as a full score. Validators normalize those means to sum to one and submit them as weights with no owner reservation; the policy refuses a non-zero owner burn share. A miner absent when sampled records a zero. History is keyed by hotkey.",
     "trust": "code",
     "path": "rlvr/scoring/eval_engine.py",
     "url": "https://raw.githubusercontent.com/hone-subnet-org/hone-subnet/34de7f646002a1d2fea96451aa2f1091fcbe0c13/rlvr/scoring/eval_engine.py",
     "quote": "Count-bounded score histories -> L1-normalized weights."
    },
    "judges": {
     "text": "Nine validators were active on the 2026-09-09 chain snapshot. Commit-reveal is off. Each validator is a whole examiner: it leases problems from a private problem server outside the repository, deals each to half of the serving miners in rotation, commits the signed replies, receives the hidden cases and grades every reply itself in a sandbox. The server can pace validators with Retry-After and gates the reveal.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled False, weights_rate_limit 100, weights_version 803; chain-2026-09-09.json active_validators 9"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. A validator attempts a challenge every 38 blocks, about 7.5 minutes, and submits weights every 180 blocks, about 36 minutes, never below the chain rate limit plus 20. A miner is judged on a rolling window of its last 200 problems. A new registration is immune from deregistration for 5,000 blocks, about 16 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000; policy.py round_interval_blocks: int = 38, weights_interval_blocks: int = 180"
    },
    "buyer": {
     "text": "Looked for a price, a customer, a product page or an endpoint on honedashboard.com, a miner-performance dashboard that renders Waiting for aggregate data to a fetcher, and in the README, DESIGN.md and DEMO_MINER.md at the pinned commit. None found. The README says problem construction is not part of this repository; the only hint of an output beyond weights is that partial-credit rewards affect exported dataset labels.",
     "trust": "unknown"
    },
    "exploits": {
     "text": "Leaking hidden tests into a prompt: the signed answer set is committed before the cases are revealed. Replaying a captured request: an 8-second UUID cache. Inheriting a good history: scores are keyed by hotkey and cleared on change. Copying another miner's solution: not addressed; the code says AST fingerprints were rejected because they reward irrelevant structural changes, so V1 has no duplication scoring. Timeouts and invalid replies score zero.",
     "trust": "code",
     "path": "rlvr/scoring/payment.py",
     "url": "https://raw.githubusercontent.com/hone-subnet-org/hone-subnet/34de7f646002a1d2fea96451aa2f1091fcbe0c13/rlvr/scoring/payment.py",
     "quote": "TODO(V2): Revisit duplication-resistant scoring only with a signal that cannot be cheaply gamed."
    }
   },
   "sources": [
    "https://honedashboard.com",
    "https://github.com/hone-subnet-org/hone-subnet",
    "https://raw.githubusercontent.com/hone-subnet-org/hone-subnet/34de7f646002a1d2fea96451aa2f1091fcbe0c13/README.md",
    "https://raw.githubusercontent.com/hone-subnet-org/hone-subnet/34de7f646002a1d2fea96451aa2f1091fcbe0c13/docs/DESIGN.md",
    "https://raw.githubusercontent.com/hone-subnet-org/hone-subnet/34de7f646002a1d2fea96451aa2f1091fcbe0c13/docs/DEMO_MINER.md",
    "https://raw.githubusercontent.com/hone-subnet-org/hone-subnet/34de7f646002a1d2fea96451aa2f1091fcbe0c13/rlvr/scoring/payment.py",
    "https://raw.githubusercontent.com/hone-subnet-org/hone-subnet/34de7f646002a1d2fea96451aa2f1091fcbe0c13/rlvr/scoring/eval_engine.py",
    "https://raw.githubusercontent.com/hone-subnet-org/hone-subnet/34de7f646002a1d2fea96451aa2f1091fcbe0c13/rlvr/policy.py",
    "https://raw.githubusercontent.com/hone-subnet-org/hone-subnet/34de7f646002a1d2fea96451aa2f1091fcbe0c13/rlvr/orchestrator.py"
   ],
   "rank": 28,
   "emission_pct": "1.1%",
   "strength": 5
  },
  {
   "netuid": 90,
   "name": "KubeTEE",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "compute",
   "repo": {
    "url": "https://github.com/KubeTEE-AI/kubetee-subnet",
    "commit": "030c99226a2bbd02adebd9a05daabc4e7ac928da",
    "committed": "2026-09-20"
   },
   "fields": {
    "work": {
     "text": "Confidential GPU capacity. A miner runs a Kubernetes cluster of 8-GPU worker nodes with Intel TDX and NVIDIA confidential computing, posts a 100 TAO deposit on its own hotkey, and is onboarded by hand. What is paid for today is capacity that passes a readiness check, priced per GPU-hour; job execution and attestation are not yet scored.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/KubeTEE-AI/kubetee-subnet/030c99226a2bbd02adebd9a05daabc4e7ac928da/README.md",
     "quote": "miners earn Bittensor emissions for providing confidential compute capacity and reliably executing Armada-scheduled jobs"
    },
    "scoring": {
     "text": "A dollar target, not a benchmark. Each cycle the validator reads every miner cluster through Rancher, passes or fails a binary readiness verdict (hotkey binding, high-availability topology, 8-GPU workers, GPU passthrough, runtime handler), and for each ready miner computes GPU count times the card price per GPU-hour times tenure times window hours. Tenure is fixed at 1.0 while the reliability gate is unwired.",
     "trust": "code",
     "path": "validator/miner_scoring.py",
     "url": "https://raw.githubusercontent.com/KubeTEE-AI/kubetee-subnet/030c99226a2bbd02adebd9a05daabc4e7ac928da/validator/miner_scoring.py",
     "quote": "usd_target_per_hour x tenure x window_hours / usd_per_alpha; tenure: float = 1.0  # 0..1: 1.0 while the reliability gate is not wired",
     "disagrees": "The README's economics section says emissions are weighted by attested TEE health, job-execution quality and uptime and that no attestation means no emissions; its What Ships Today table and the code at the pinned commit put only Rancher readiness in the weight path, with attestation, Armada metrics and health designed and not yet scored."
    },
    "split": {
     "text": "Proportional to dollar target, capped by the pool. Each ready miner's earned dollars over the epoch's emission pool in dollars is its weight; the remainder is set on the owner UID, which under recycle returns the alpha to unissued supply. On 2026-09-20 the dashboard showed two clusters: the owner's staging cluster UID 56 at 64 percent of the pool and BTLABS UID 97 at 32 percent, $31.48 recycled.",
     "trust": "code",
     "path": "validator/miner_scoring.py",
     "url": "https://raw.githubusercontent.com/KubeTEE-AI/kubetee-subnet/030c99226a2bbd02adebd9a05daabc4e7ac928da/validator/miner_scoring.py",
     "quote": "Whatever miners do not earn is recycled to the owner UID (set as weight on the owner's hotkey). Weights are normalized to sum 1.0."
    },
    "judges": {
     "text": "Six validators were active on the 2026-09-09 chain snapshot. Commit-reveal is on; weights may be set once per 100 blocks. The validator reads cluster inventory through a GET-only Rancher client, TAO/USD from Taostats, and Targon's payout feed to clamp the price card downward; the subnet-owner validator publishes the price snapshot and dashboard to Hippius. A cycle without a trustworthy price, inventory or metagraph read is skipped.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 100, yuma_version 3; chain-2026-09-09.json active_validators 6"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. The README says the validator sets weights once per epoch, boundary-aligned; the config's window is one hour by default, so a miner earns its hourly target per cycle. The Hippius dashboard on 2026-09-20 read epoch 25,293. A new registration is immune from deregistration for 5,000 blocks, about 16 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000; config.py window_hours=_get_float(\"KUBETEE_WINDOW_HOURS\", 1.0)"
    },
    "buyer": {
     "text": "Not an enterprise yet. The only recorded income is idle GPU capacity sold as confidential inference of GLM-5.2, GLM-5.3, GLM-5.3-Flash and Ornith-1.5-397B through sayGM, subnet 28, with the alpha earned swapped to SN90 and recycled daily. The validator's card prices GPU-hours from $2.00 for an RTX 6000 to $9.75 for a B300; paid jobs in TAO or alpha are a Phase 2 item.",
     "trust": "docs",
     "url": "https://kubetee.ai/dashboard",
     "quote": "KubeTEE serves inference on sayGM (Bittensor SN28). The alpha earned is swapped to SN90 and recycled"
    },
    "exploits": {
     "text": "No incident is recorded. With one production miner and the owner's staging cluster, the guardrails are structural: the GPU card is clamped downward to what Targon pays per card, floored at 75 percent of the card; a miner absent for sustained cycles is deregistered under a guard; the 100 TAO deposit is measured, not enforced; a cycle without a trustworthy price or inventory read keeps the previous weights.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/KubeTEE-AI/kubetee-subnet/030c99226a2bbd02adebd9a05daabc4e7ac928da/README.md",
     "quote": "A cycle that cannot get a trustworthy price, Rancher inventory, or metagraph read is skipped rather than guessed"
    }
   },
   "sources": [
    "https://kubetee.ai",
    "https://kubetee.ai/dashboard",
    "https://s3.hippius.com/kubetee-validator/index.html",
    "https://github.com/KubeTEE-AI/kubetee-subnet",
    "https://raw.githubusercontent.com/KubeTEE-AI/kubetee-subnet/030c99226a2bbd02adebd9a05daabc4e7ac928da/README.md",
    "https://raw.githubusercontent.com/KubeTEE-AI/kubetee-subnet/030c99226a2bbd02adebd9a05daabc4e7ac928da/validator/miner_scoring.py",
    "https://raw.githubusercontent.com/KubeTEE-AI/kubetee-subnet/030c99226a2bbd02adebd9a05daabc4e7ac928da/validator/config.py",
    "https://raw.githubusercontent.com/KubeTEE-AI/kubetee-subnet/030c99226a2bbd02adebd9a05daabc4e7ac928da/docs/TOKENOMICS.md",
    "https://raw.githubusercontent.com/KubeTEE-AI/kubetee-subnet/030c99226a2bbd02adebd9a05daabc4e7ac928da/docs/MINER-DEPOSIT.md"
   ],
   "rank": 29,
   "emission_pct": "1.1%",
   "strength": 4
  },
  {
   "netuid": 34,
   "name": "BitMind",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "media",
   "repo": {
    "url": "https://github.com/BitMind-AI/bitmind-subnet",
    "commit": "45e92d821bca7928dbfdaac9630b012016972d23",
    "committed": "2026-09-19"
   },
   "fields": {
    "work": {
     "text": "A media-provenance classifier: a model that takes an image, video or audio clip and returns class scores for real against synthetic. Detector miners submit the model to the platform and run no servers. Generator miners make synthetic media on demand for validators. What is paid for is, per lane, the reigning best classifier on the current benchmark, and for generators verified output that fools the detectors.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/BitMind-AI/bitmind-subnet/45e92d821bca7928dbfdaac9630b012016972d23/README.md",
     "quote": "Detectors and generators compete in a dynamic loop: detectors sharpen their ability to spot synthetic media, while generators push to create more convincing fakes."
    },
    "scoring": {
     "text": "Per modality a detector is benchmarked on public, private holdout and generator-made samples and scored by sn34_score, which combines classification performance, the Matthews correlation coefficient, with probability calibration, the Brier score, under round-specific sample weights. A challenger takes a lane's crown when its sn34_score is at least 0.01 above the sitting king on the same benchmark version. Generators score pass rate x a volume ramp x a model-price multiplier.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/BitMind-AI/bitmind-subnet/45e92d821bca7928dbfdaac9630b012016972d23/docs/Incentive.md",
     "quote": "combines classification performance (MCC) with probability calibration (Brier score)"
    },
    "split": {
     "text": "Fixed lanes: image 0.40, video 0.40, audio 0.04, generators 0.16. Inside each detector lane the current king takes 0.85, the previous distinct king 0.10 and the one before 0.05; unused slots roll up to the king and an unresolvable king's share burns. The generator pot is proportional to score among qualified miners, image weighted 0.30 and video 0.70. All detector lanes burn while GAS reports emissions disabled.",
     "trust": "code",
     "path": "gas/koth_weights.py",
     "url": "https://raw.githubusercontent.com/BitMind-AI/bitmind-subnet/45e92d821bca7928dbfdaac9630b012016972d23/gas/koth_weights.py",
     "quote": "KOTH_LANE_RESIDUAL = (0.85, 0.10, 0.05)"
    },
    "judges": {
     "text": "Five validators were active on the 2026-09-09 chain snapshot, of 64 permitted, against 117 miners. Weights are committed then revealed, at most once per 100 blocks, with weights_version 404020. A validator generates synthetic media, challenges generator miners, and every epoch fetches the reigning kings per lane from the platform's kings API, caching the last answer if it is down. Detector benchmarking runs on the platform, not on the validator.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled True, weights_rate_limit 100, weights_version 404020; chain-2026-09-09.json active_validators 5"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes, and validators set lane weights on the reigning hotkeys every tempo. The puzzle turns per benchmark round: a throne is held until a challenger clears the margin, and when a new benchmark version ships the king is marked defending until re-evaluated. Generator qualification looks back 7 days, base rewards 24 hours. A new registration is immune for 5,000 blocks, about 16 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 5000"
    },
    "buyer": {
     "text": "Developers and enterprises. The API pricing page lists Free at $0 a month for up to 100 requests, Pro at $100 a month for 10,000 or more, and Custom for large organisations with SLAs and on-premise deployment. Consumers get a web app, mobile apps and browser extensions. No customer is named on the pages fetched and no dated usage figure appears.",
     "trust": "docs",
     "url": "https://docs.bitmind.ai/pricing.md",
     "quote": "Pro | $100/mo | Teams and power users who need 10,000+ requests/month"
    },
    "exploits": {
     "text": "Overfitting the test: each round has holdout datasets unreleased until it ends, and each hotkey gets one counted submission per registration, so a miner cannot spam variants. Recycling a hotkey: a replacement hotkey cannot inherit the prior owner's generator eligibility at the same UID. Generator wash: pay only in a modality whose 7-day fool rate clears 2 percent for image, 1 for video, on at least 20 samples.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/BitMind-AI/bitmind-subnet/45e92d821bca7928dbfdaac9630b012016972d23/docs/Incentive.md",
     "quote": "A replacement hotkey cannot inherit the previous owner's eligibility at the same UID."
    }
   },
   "sources": [
    "https://docs.bitmind.ai",
    "https://docs.bitmind.ai/getting-started.md",
    "https://docs.bitmind.ai/pricing.md",
    "https://bitmind.ai/pricing",
    "https://github.com/BitMind-AI/bitmind-subnet",
    "https://raw.githubusercontent.com/BitMind-AI/bitmind-subnet/45e92d821bca7928dbfdaac9630b012016972d23/README.md",
    "https://raw.githubusercontent.com/BitMind-AI/bitmind-subnet/45e92d821bca7928dbfdaac9630b012016972d23/docs/Incentive.md",
    "https://raw.githubusercontent.com/BitMind-AI/bitmind-subnet/45e92d821bca7928dbfdaac9630b012016972d23/docs/Discriminative-Mining.md",
    "https://raw.githubusercontent.com/BitMind-AI/bitmind-subnet/45e92d821bca7928dbfdaac9630b012016972d23/docs/Generative-Mining.md",
    "https://raw.githubusercontent.com/BitMind-AI/bitmind-subnet/45e92d821bca7928dbfdaac9630b012016972d23/gas/koth_weights.py",
    "https://raw.githubusercontent.com/BitMind-AI/bitmind-subnet/45e92d821bca7928dbfdaac9630b012016972d23/gas/evaluation/rewards.py",
    "https://raw.githubusercontent.com/BitMind-AI/bitmind-subnet/45e92d821bca7928dbfdaac9630b012016972d23/gas/evaluation/generator_scores.py",
    "https://raw.githubusercontent.com/BitMind-AI/bitmind-subnet/45e92d821bca7928dbfdaac9630b012016972d23/gas/config.py",
    "https://raw.githubusercontent.com/BitMind-AI/bitmind-subnet/45e92d821bca7928dbfdaac9630b012016972d23/neurons/validator/validator.py"
   ],
   "rank": 30,
   "emission_pct": "1.0%",
   "strength": 3
  },
  {
   "netuid": 62,
   "name": "Ridges",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "agents",
   "repo": {
    "url": "https://github.com/ridgesai/ridges",
    "commit": "6ada4b77b476b22c414c76408194259ae663550b",
    "committed": "2026-09-15"
   },
   "fields": {
    "work": {
     "text": "A software engineering agent: one Python file exporting agent_main that takes a problem statement and returns a unified diff. The miner pays a burn of about $5 per upload and its own inference. What is paid for is an approved improvement over the competition's current leader on a hidden problem set within a niche such as linting or database queries.",
     "trust": "docs",
     "url": "https://docs.ridges.ai/scoring.md",
     "quote": "agents submit a patch, the platform applies the diff and runs the hidden test suite"
    },
    "scoring": {
     "text": "Deterministic: apply the patch, run the hidden tests, score the fraction that pass. Two screeners of 20 problems at 45 and 60 percent, then three validators on 50 problems each; a problem counts only when every assigned validator marks it solved. Test names, logs and inference results are hidden from miners. Each competition carries its own thresholds and problem counts.",
     "trust": "docs",
     "url": "https://docs.ridges.ai/scoring.md",
     "quote": "the platform computes a consensus score: for each problem, the agent gets credit only if every assigned validator marks that problem solved"
    },
    "split": {
     "text": "Proportional to decaying reward scores across every approved agent, summed per hotkey. An agent qualifies only by beating the leader by 3 percent on score, or 6 percent on cost at equal score. Its score is improvement units, log-compounded 3 percent steps, times a time multiplier 1 + sqrt(hours stalled / scale), then halves every 336 hours. Each competition holds a fixed share.",
     "trust": "code",
     "path": "utils/incentives.py",
     "url": "https://raw.githubusercontent.com/ridgesai/ridges/6ada4b77b476b22c414c76408194259ae663550b/utils/incentives.py",
     "quote": "return value * 2 ** (-max(0.0, elapsed_hours) / half_life_hours)",
     "disagrees": "The incentive page says the multiplier doubles after a 6-hour stall; api/config.py at the pinned commit defaults INCENTIVE_TIME_MULTIPLIER_SCALE_HOURS to 12, and each competition's policy may override it."
    },
    "judges": {
     "text": "Eleven validators were active on the 2026-09-09 chain snapshot. Commit-reveal is off. Validators run the agent in sandboxes on their assigned problems, but the weight vector itself comes from the platform: each validator fetches a hotkey-to-weight mapping from /scoring/weights, checks it sums to one and every hotkey is registered, and submits it unchanged. If any hotkey is missing, on-chain weights are left as they were.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled False, weights_version 6; chain-2026-09-09.json active_validators 11"
    },
    "cadence": {
     "text": "Emission settles every 360 blocks, about 72 minutes. Validators fetch and set weights every 600 seconds by the example configuration. The puzzle turns per approval: a leader stands until an agent clears the bar, one submission per hotkey every 12 hours, and every reward halves over 14 days. A new registration is immune from deregistration for 7,400 blocks, about 25 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 360, immunity_period 7400"
    },
    "buyer": {
     "text": "Developers with a GitHub repository, through Ridgeline: one credit turns one issue into one pull request from an isolated machine. $9.99 a month buys 10 credits, or locking 1,000 alpha on the subnet earns one credit every three days. No usage or customer count is published; the third parties in the map cite cost per benchmark run, not paying customers.",
     "trust": "docs",
     "url": "https://docs.ridges.ai/ridgeline/credits.md",
     "quote": "A recurring subscription of $9.99/month grants 10 credits."
    },
    "exploits": {
     "text": "Hardcoding: agents were written to pass known tests, so test names, logs and inference results are now hidden and problem sets are built and mutated per niche. Copying the leader and adjusting earns nothing below the 3 percent threshold. The rules allow optimising for a niche and ban stored answers. Agents whose hotkey deregisters are dropped before the split.",
     "trust": "docs",
     "url": "https://docs.ridges.ai/scoring.md",
     "quote": "Miners previously hardcoded agents to pass known specific tests."
    }
   },
   "sources": [
    "https://docs.ridges.ai/scoring.md",
    "https://docs.ridges.ai/incentive-mechanism.md",
    "https://docs.ridges.ai/ridgeline/credits.md",
    "https://docs.ridges.ai/llms-full.txt",
    "https://docs.ridges.ai/guides/mining-intro",
    "https://github.com/ridgesai/ridges",
    "https://raw.githubusercontent.com/ridgesai/ridges/6ada4b77b476b22c414c76408194259ae663550b/README.md",
    "https://raw.githubusercontent.com/ridgesai/ridges/6ada4b77b476b22c414c76408194259ae663550b/utils/incentives.py",
    "https://raw.githubusercontent.com/ridgesai/ridges/6ada4b77b476b22c414c76408194259ae663550b/api/config.py",
    "https://raw.githubusercontent.com/ridgesai/ridges/6ada4b77b476b22c414c76408194259ae663550b/api/incentives.py",
    "https://raw.githubusercontent.com/ridgesai/ridges/6ada4b77b476b22c414c76408194259ae663550b/validator/set_weights.py",
    "https://raw.githubusercontent.com/ridgesai/ridges/6ada4b77b476b22c414c76408194259ae663550b/validator/.env.example",
    "https://raw.githubusercontent.com/ridgesai/ridges/6ada4b77b476b22c414c76408194259ae663550b/validator/background_loops.py"
   ],
   "rank": 31,
   "emission_pct": "1.0%",
   "strength": 3
  },
  {
   "netuid": 19,
   "name": "blockmachine",
   "version": "1.0",
   "read_on": "2026-09-19",
   "commodity": "other",
   "repo": {
    "url": "https://github.com/taostat/blockmachine-validator",
    "commit": "25ca87c6227902d4af077423b4e4cce8c58c046c",
    "committed": "2026-09-17"
   },
   "fields": {
    "work": {
     "text": "Answered JSON-RPC requests. The miner runs its own full or archive node for one of eleven chains behind a gateway the network supplies, passes a per-chain eligibility battery, sets a price in US dollars per compute unit, and serves whatever customer traffic the gateway routes to it. What is paid for is compute units served at the bid price, checked for correctness afterwards.",
     "trust": "docs",
     "url": "https://raw.githubusercontent.com/taostat/blockmachine-miner/ef5e876c3a09a4858a9e05aa586a546bab34e7a5/README.md",
     "quote": "You earn emissions proportional to the CUs you served at your bid price"
    },
    "scoring": {
     "text": "Work times price. Each epoch the validator reads the gateway's manifest of compute units each miner served, multiplies non-archive and archive units by that miner's own bid prices in dollars, and that dollar figure is the score. Quality is not in the formula; it acts earlier, in the routing score and burst tests that decide how much traffic a node gets. Correctness is checked afterwards against reference nodes.",
     "trust": "code",
     "path": "common/scoring/weights.py",
     "url": "https://raw.githubusercontent.com/taostat/blockmachine-validator/25ca87c6227902d4af077423b4e4cce8c58c046c/common/scoring/weights.py",
     "quote": "consumed_usd = miner.cu_non_archive * miner.price_non_archive + miner.cu_archive * miner.price_archive"
    },
    "split": {
     "text": "Proportional to dollars consumed. Each miner's weight is its consumed USD over the total. The miner pool is 41 percent of epoch emission. The scale between pool and consumption is unclamped both ways, so the pool is filled exactly and nothing burns, unless the scale exceeds 10: then consumption is paid at face value and the rest goes to burn sink UID 103. Banned coldkeys get zero.",
     "trust": "code",
     "path": "common/scoring/weights.py",
     "url": "https://raw.githubusercontent.com/taostat/blockmachine-validator/25ca87c6227902d4af077423b4e4cce8c58c046c/common/scoring/weights.py",
     "quote": "MINER_EMISSION_PCT = 0.41; scale = miner_pool_usd / total_consumed_usd; they reduce to consumed_i / consumed_total",
     "disagrees": "The whitepaper fetched 2026-09-19 says an emission burn sink removes excess unearned alpha from circulation; the code comment at the pinned commit says the pool-over-consumption cap was removed so that burn is zero every epoch, with burn only on the sanity bound or an epoch with no gateway activity."
    },
    "judges": {
     "text": "Nine validators were active on the 2026-09-09 chain snapshot. Commit-reveal is off. A validator never sees customer traffic: it reads the gateway's logs from public storage, re-executes the logged requests against its own reference nodes, sampling 100 percent up to 100,000 per miner by default, and bans a coldkey permanently on one mismatch. It sets weights from the gateway's compute-unit manifest and a price snapshot, once per epoch.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "commit_reveal_weights_enabled False, weights_rate_limit 100; chain-2026-09-09.json active_validators 9; config.py logged_sample_pct: float = 1"
    },
    "cadence": {
     "text": "Emission settles every 7,200 blocks, a full day, twenty times the 360 most subnets use. The validator commits once per chain epoch, from the finalized epoch manifest, inside a commit window it computes from the chain's own epoch clock. A new registration is immune from deregistration for 3,600 blocks, about 12 hours.",
     "trust": "chain",
     "snapshot": "data/hyperparams-2026-09-19.json",
     "quote": "tempo 7200, immunity_period 3600; validator README: each epoch (7,200 blocks, ~24 hours)",
     "disagrees": "The miner README at commit ef5e876 says validators submit weights on-chain each epoch (~72 minutes); the chain hyperparameters on 2026-09-19 and the validator README at the pinned commit give 7,200 blocks, about 24 hours."
    },
    "buyer": {
     "text": "Apps that call blockchains, paying per request unit: as low as $1 per million requests at scale, with a calculator putting 100 million requests a month at $165 against Alchemy at $979, and failed requests not billed. The buybacks page lists five settled cycles from May to September 2026, 6,613 alpha bought for $16,296, each row linked to a Taostats proof, the last on 2026-09-17.",
     "trust": "docs",
     "url": "https://blockmachine.io/pricing",
     "quote": "blockmachine $165 per month; Alchemy $979 per month; QuickNode $999 per month; dRPC $600 per month."
    },
    "exploits": {
     "text": "Serving wrong data: a logged response that mismatches the reference node on a deterministic query is a permanent coldkey ban, applied before weights are built. Claiming archive without archive state, or masking the client software: eligibility failures, re-checked continuously. Dodging the burst test: refused or slow requests each cost 20 seconds in the capacity score. Inflated consumption: a pool-to-consumption scale above 10 fails closed.",
     "trust": "code",
     "path": "verification/blacklist.py",
     "url": "https://raw.githubusercontent.com/taostat/blockmachine-validator/25ca87c6227902d4af077423b4e4cce8c58c046c/verification/blacklist.py",
     "quote": "A single incorrect response results in permanent coldkey ban."
    }
   },
   "sources": [
    "https://blockmachine.io/pricing",
    "https://blockmachine.io/technology",
    "https://blockmachine.io/whitepaper",
    "https://blockmachine.io/buybacks",
    "https://blockmachine.io/llms.txt",
    "https://github.com/taostat/blockmachine",
    "https://github.com/taostat/blockmachine-validator",
    "https://github.com/taostat/blockmachine-miner",
    "https://raw.githubusercontent.com/taostat/blockmachine-miner/ef5e876c3a09a4858a9e05aa586a546bab34e7a5/README.md",
    "https://raw.githubusercontent.com/taostat/blockmachine-validator/25ca87c6227902d4af077423b4e4cce8c58c046c/README.md",
    "https://raw.githubusercontent.com/taostat/blockmachine-validator/25ca87c6227902d4af077423b4e4cce8c58c046c/weights/loop.py",
    "https://raw.githubusercontent.com/taostat/blockmachine-validator/25ca87c6227902d4af077423b4e4cce8c58c046c/weights/types.py",
    "https://raw.githubusercontent.com/taostat/blockmachine-validator/25ca87c6227902d4af077423b4e4cce8c58c046c/common/scoring/weights.py",
    "https://raw.githubusercontent.com/taostat/blockmachine-validator/25ca87c6227902d4af077423b4e4cce8c58c046c/verification/loop.py",
    "https://raw.githubusercontent.com/taostat/blockmachine-validator/25ca87c6227902d4af077423b4e4cce8c58c046c/verification/blacklist.py",
    "https://raw.githubusercontent.com/taostat/blockmachine-validator/25ca87c6227902d4af077423b4e4cce8c58c046c/chain/submitter.py"
   ],
   "rank": 32,
   "emission_pct": "0.9%",
   "strength": 5
  }
 ]
}