NetworkRegisteredAt

Storage Map v133 → v411

Block when subnet was registered.

Explore chain
Queried by: subnet ownersdevelopersanalytics

The Big Picture

Like neurons have immunity after registration, new subnets have immunity from dissolution. NetworkRegisteredAt records when the subnet was created. Combined with NetworkImmunityPeriod, it determines if the subnet is still protected.

Why This Matters

Is this subnet still protected from dissolution? Check (current_block - NetworkRegisteredAt) vs NetworkImmunityPeriod. Also shows how established the subnet is.

Example Scenario

Query NetworkRegisteredAt(netuid=18) returns 6500000. Current block is 7000000. Subnet is 500,000 blocks old (~11.5 days). Check if that exceeds NetworkImmunityPeriod.

Common Questions

What does subnet immunity protect against?
Dissolution. New subnets can't be removed during immunity, giving them time to establish themselves and attract participants.
Can I see all subnet creation dates?
Yes, iterate NetworkRegisteredAt for all netuids to see creation history.

Use Cases

  • Check if subnet is still in immunity period
  • Calculate subnet age
  • Build subnet tenure analytics
  • Research subnet creation patterns
  • Verify subnet legitimacy through age

From Chain Metadata

MAP ( netuid ) --> block_created

Purpose & Usage

Purpose

Track subnet age for immunity - when did this subnet first appear.

Common Query Patterns

  • Query by netuid
  • Calculate subnet immunity status
  • Research subnet age and tenure

Query Keys

#NameTypeDescription
1
netuid
u16 netuid (u16, hashed key component)

Stored Value

block_created (u64)

RAO -> TAO (/ 10^9)

Relationships

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 NetworkRegisteredAt storage
const netuid = 1;

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

Version History

v133 block 1,404,224 Added
v149 block 3,014,339 Internal re-bind
v166–v194 · runtime versions skipped on chain (never deployed)
v195 block 3,791,350 Internal re-bind
v278–v289 · runtime versions skipped on chain (never deployed)
v290 block 5,947,548 Internal re-bind Current

Runtime Info

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