Lock

Storage Map v411 → current New

Per-coldkey per-subnet per-hotkey lock state. DMAP (coldkey , subnet , hotkey ) → LockState.

Explore chain
Queried by: stakerssubnet ownersanalyticswallets

The Big Picture

Lock is the canonical record of every locked position. One coldkey can hold at most one lock per subnet, tied to a specific hotkey. Together with HotkeyLock and OwnerLock it forms the conviction substrate.

Use Cases

  • Show a user their lock positions across subnets
  • Compute subnet conviction tallies for owner allocation
  • Audit lock state across the network

From Chain Metadata

DMAP ( coldkey, netuid, hotkey ) --> LockState | Exponential lock per coldkey per subnet.

Purpose & Usage

Purpose

Holds the individual lock position for each (coldkey, subnet) pair, including its locked amount, conviction, and decay clock.

Common Query Patterns

  • Look up a single coldkey-subnet-hotkey lock
  • Iterate locks for a given coldkey
  • Iterate locks for a given subnet to compute aggregate conviction
Part of: Lock & Conviction

Query Keys

#NameTypeDescription
1
coldkey
AccountId coldkey (AccountId, hashed key component) (hex -> SS58)
2
netuid
u16 netuid (u16, hashed key component)
3
hotkey
AccountId hotkey (AccountId, hashed key component) (hex -> SS58)

Stored Value

LockState (LockState)

Code Examples

import { createClient, Binary } from "polkadot-api";
import { getWsProvider } from "polkadot-api/ws";
import { sub } from "@polkadot-api/descriptors"; // generated by: npx papi add sub -w wss://entrypoint-finney.opentensor.ai:443

const client = createClient(getWsProvider("wss://entrypoint-finney.opentensor.ai:443"));
const api = client.getTypedApi(sub);

// Query Lock storage
const coldkey = "5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY";
const netuid = 1;
const hotkey = "5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY";

const result = await api.query.SubtensorModule.Lock.getValue(coldkey, netuid, hotkey);
console.log("Lock:", result);

Runtime Info

View Source
Pallet
SubtensorModule
Storage Kind
Map
First Version
v411
Current Version
v411