FirstEmissionBlockNumberSet

Event Re-added v257 → v265, v273 → v277, v290 → v315, v320 → v326, v334 → v367, v372 → v377, v385 → current #93

Emitted when the first emission block is set for a subnet .

View events on chain
Useful for: subnet ownersminersvalidatorsanalyticsdevelopers

The Big Picture

When a new subnet is created, it doesn't immediately start receiving emissions. The first emission block number determines when the subnet enters the emission pool and starts earning TAO. This gives subnet owners time to set up, configure parameters, and onboard initial miners/validators before the economic stakes become real. It's like a countdown to 'going live'.

Why This Matters

If you're planning to mine or validate on a new subnet, this tells you when it actually matters. Before the first emission block, there are no rewards. After it, the competition begins. Time your registration and setup to be ready when emissions start.

Example Scenario

A new AI subnet is created at block 1,000,000. FirstEmissionBlockNumberSet fires with block 1,050,000. The subnet owner has 50,000 blocks (~1 week) to prepare. You want to register and set up your miner before block 1,050,000 so you're earning from day one.

Common Questions

Can I participate before the first emission block?
Yes, you can register and set up. You just won't earn emissions until that block. Use the time to optimize your miner/validator setup without economic pressure.
What if I miss the first emission block?
No problem - emissions continue after that. You'll start earning from whenever you register. But early participants may have an advantage in building bonds and reputation.
Can the subnet owner change this after it's set?
Usually it can only be set once (or changes require admin intervention). Once emissions start, there's no going back. Check if reset is allowed in your case.

Use Cases

  • Know when a new subnet starts earning emissions
  • Plan participation timing for new subnets
  • Track subnet launch schedules
  • Build subnet launch monitoring dashboards

How to Use This Event

  • Monitor new subnets for their emission start date
  • Track upcoming subnet activations
  • Build countdown tools for subnet launches

From Chain Metadata

FirstEmissionBlockNumber is set via start call extrinsic Parameters: netuid block number

Triggers

Emitted by

Preconditions

  • Subnet exists
  • First emission not already set (or reset allowed)

Effects

Storage Modified

Postconditions

  • Subnet will start receiving emissions at specified block

Side Effects

  • Determines when subnet joins emission distribution

Event Data

#NameTypeDescription
0
arg0
u16 Event field #0 (u16)
1
arg1
u64 Event field #1 (u64)

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 });

// Subscribe to FirstEmissionBlockNumberSet events
api.query.system.events((events) => {
  events
    .filter(({ event }) =>
      event.section === stringCamelCase("SubtensorModule") &&
      event.method === "FirstEmissionBlockNumberSet"
    )
    .forEach(({ event }) => {
      console.log("FirstEmissionBlockNumberSet:", event.data.toHuman());
    });
});

Version History

v257 block 5,228,683 2 args
v273 block 5,659,032 2 args
v290 block 5,947,548 2 args
v320 block 6,523,566 2 args
v334 block 6,811,690 2 args
v372 block 7,430,358 2 args
v385 block 7,782,670 2 args Current

Runtime Info

View Source
Pallet Index
7
Event Index
93
First Version
v257
Current Version
v393