TimelockedWeightsRevealed

Event Re-added v306 → v315, v320 → v326, v334 → v367, v372 → v377, v385 → current #106

Emitted when timelocked weights are revealed after their round.

View events on chain
Useful for: validatorssubnet ownersminersanalyticsdevelopers

The Big Picture

When the target round arrives, all timelocked commits for that round can reveal. This event fires when your reveal happens. Because everyone committed to the same round reveals together (or nearly so), no validator has an information advantage. Your weights are now live, contributing to the most fair possible consensus.

Why This Matters

Timelocked reveal is the moment your committed weights become real. This event confirms success. All validators who committed to this round are revealing at the same time - fair, synchronized, and anti-copying by design.

Example Scenario

Round 1000 arrives. You call reveal for your round-1000 commit. TimelockedWeightsRevealed fires, confirming your weights are now active. Dozens of other validators are revealing their round-1000 commits simultaneously. The consensus for this round reflects everyone's independent evaluations.

Common Questions

Does reveal happen automatically at the round?
Typically you still call reveal manually, but you can only do so once the round arrives. Automation is possible - just trigger reveal when round >= your commit's round.
What happens if I reveal late?
If the commit is still valid (hasn't expired), late reveal works. But you might miss being synchronized with others. Check expiration rules for your subnet.
How does this prevent copying attacks?
Everyone commits before anyone reveals. All reveals happen in the same round. There's no window where you can see others' weights before deciding yours - you already committed.

Use Cases

  • Confirm timelocked reveal succeeded
  • Track synchronized reveal activity
  • Monitor per-round weight reveals
  • Build round-synchronized validation analytics

How to Use This Event

  • Confirm your timelocked reveals succeed
  • Track reveal participation per round
  • Build round-based consensus analytics

From Chain Metadata

Timelocked Weights have been successfully revealed. **netuid**: The network identifier. **who**: The account ID of the user revealing the weights.

Triggers

Effects

Postconditions

  • Weights applied
  • Timelocked commit cleared

Side Effects

  • Synchronizes weight reveals across validators

Event Data

#NameTypeDescription
0
arg0
u16 Event field #0 (u16)
1
arg1
AccountId Event field #1 (AccountId) (hex -> SS58)

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 TimelockedWeightsRevealed events
api.query.system.events((events) => {
  events
    .filter(({ event }) =>
      event.section === stringCamelCase("SubtensorModule") &&
      event.method === "TimelockedWeightsRevealed"
    )
    .forEach(({ event }) => {
      console.log("TimelockedWeightsRevealed:", event.data.toHuman());
    });
});

On-Chain Activity

Emission Frequency
●●●●○○ Significant 1M–5M emissions

Major features with millions of emissions

#15 most emitted event

As of block 7,429,232

Version History

v306 block 6,321,411 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
106
First Version
v306
Current Version
v393