MinChildkeyTake

Storage Plain v195 → current

Minimum allowed child key take rate.

Explore chain
Queried by: validatorsdeveloperssubnet owners

The Big Picture

The protocol requires a minimum take for children. This ensures children are compensated for their operations and prevents race-to-bottom dynamics.

Why This Matters

Children can't charge below this rate. It ensures they're compensated fairly for operating infrastructure and providing services.

Example Scenario

Query MinChildkeyTake() returns 500 (5%). All children must charge at least 5% take. Setting lower will fail.

Common Questions

Why is there a minimum?
Prevents race to bottom where children undercut each other to zero. Ensures sustainable economics for child operations.

Use Cases

  • Check minimum required take when setting child take
  • Build UI sliders with correct min bounds
  • Verify protocol limits for child economics
  • Research child key incentive design

Purpose & Usage

Purpose

Floor on child key commission - ensures children receive fair compensation.

Common Query Patterns

  • Single value query
  • Verify take rate is within bounds
  • Build take rate pickers with correct limits

Stored Value

value (u16)

Relationships

Code Examples

import { ApiPromise, WsProvider } from "@polkadot/api";
import { stringCamelCase } from "@polkadot/util";

const provider = new WsProvider("wss://entrypoint-finney.opentensor.ai:443");
const api = await ApiPromise.create({ provider });

// Query MinChildkeyTake storage (no keys - plain value)
const result = await api.query
  [stringCamelCase("SubtensorModule")]
  [stringCamelCase("MinChildkeyTake")]();
console.log("MinChildkeyTake:", result.toHuman());

Runtime Info

View Source
Pallet
SubtensorModule
Storage Kind
Plain
First Version
v195
Current Version
v393