CRV3WeightsCommitted

Event Re-added v216 → v247, v252 → v265, v273 → v277, v290 → v315, v320 → v326, v334 → v367, v372 → v377, v385 → current #82

Emitted when weights are committed using commit-reveal v3 protocol.

View events on chain
Useful for: validatorssubnet ownersdevelopersanalytics

The Big Picture

CRV3 (Commit-Reveal version 3) is an improved protocol for weight submission with enhanced security and timing features. Subnets using CRV3 require validators to use this specific commit mechanism. This event confirms your CRV3 commit was accepted - you're using the latest protocol and your weights are queued for reveal.

Why This Matters

If your subnet requires CRV3, you must use this commit mechanism - old-style commits won't work. This event confirms compatibility - your validator is speaking the right protocol. No event = your commit failed, likely due to protocol mismatch.

Example Scenario

Subnet 5 upgraded to CRV3 for improved security. Your validator software calls the CRV3 commit function with your weight hash. CRV3WeightsCommitted fires, confirming acceptance. You're set to reveal using the CRV3 reveal function when the reveal window opens.

Common Questions

What's different about CRV3 vs older commit-reveal?
CRV3 typically includes improvements like better timing synchronization, enhanced security against copying attacks, or new verification features. Check release notes for specifics.
How do I know if my subnet uses CRV3?
Check the subnet's commit-reveal version setting. If CRV3 is required and you try old-style commits, they'll be rejected.
Can I use CRV3 on subnets that don't require it?
Depends on the runtime. Some subnets accept multiple versions, others require specific versions. Check your subnet's configuration.

Use Cases

  • Confirm CRV3 weight commits are accepted
  • Track validators using the latest commit-reveal protocol
  • Monitor CRV3 adoption across subnets
  • Build validator software supporting CRV3

How to Use This Event

  • Monitor CRV3 commits for your validator
  • Track CRV3 protocol usage network-wide
  • Build CRV3-compatible validator tools

From Chain Metadata

Commit-reveal v3 weights have been successfully committed. **who**: The account ID of the user committing the weights. **netuid**: The network identifier. **commit_hash**: The hash representing the committed weights.

Triggers

Effects

Postconditions

  • CRV3 commit stored
  • Commit timestamp recorded

Side Effects

  • Must reveal using CRV3 reveal mechanism

Event Data

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

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

On-Chain Activity

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

Major features with millions of emissions

#11 most emitted event

As of block 7,429,232

Version History

v216 block 4,510,996 3 args
v252 block 5,163,656 3 args
v273 block 5,659,032 3 args
v290 block 5,947,548 3 args
v320 block 6,523,566 3 args
v334 block 6,811,690 3 args
v372 block 7,430,358 3 args
v385 block 7,782,670 3 args Current

Runtime Info

View Source
Pallet Index
7
Event Index
82
First Version
v216
Current Version
v393