Queries
subnet-convictions
Every hotkey with locked stake on a subnet, rolled forward to now.
Per hotkey: locked mass, conviction, and the estimated blocks until its
conviction reaches 10% of the subnet's outstanding alpha. That per-hotkey
figure is a projection heuristic, not a takeover trigger: the ownership
takeover in change_subnet_owner_if_needed requires the subnet to be
at least ~1 year old (2,629,800 blocks) and the total aggregate
conviction across all lockers to reach 10% of SubnetAlphaOut, at
which point the highest-conviction hotkey's coldkey becomes the subnet
owner. Projections assume the lock rates and alpha out stay constant.
Category: Locks & conviction
Parameters
| Parameter | Type | Description |
|---|---|---|
netuid | integer | Subnet to query. |
CLI
btcli query subnet-convictions --netuid <integer> --jsonPython
Namespace method (autocomplete, signature help):
import bittensor as bt
sub = bt.Subtensor()
result = sub.locks.subnet_convictions(netuid=1)Or dispatch by name, as an agent would:
result = sub.read("subnet_convictions", netuid=1)Async is the same surface awaited: async with bt.Subtensor() as client:.
On-chain implementation
- Storage
SubtensorModule.HotkeyLock - Storage
SubtensorModule.DecayingHotkeyLock - Storage
SubtensorModule.OwnerLock - Storage
SubtensorModule.DecayingOwnerLock - Storage
SubtensorModule.SubnetOwnerHotkey - Storage
SubtensorModule.SubnetAlphaOut - Storage
SubtensorModule.UnlockRate - Storage
SubtensorModule.MaturityRate - Storage
SubtensorModule.NetworkRegisteredAt
Every file is browsable under /code exactly as built into the runtime.