Commit Reveal Weights Enabled

How the commit reveal weights enabled subnet hyperparameter turns on the commit-reveal weight scheme that conceals validator weights before reveal.

Commit reveal weights enabled is a per-subnet hyperparameter, listed in the documentation as CommitRevealWeightsEnabled, that turns on the commit-reveal weight scheme for validator submissions. The reference describes it as enabling commit reveal, with a default of false so ordinary weight visibility remains the norm unless a subnet owner opts in (Subnet Hyperparameters).

What It Controls

The hyperparameter is the on-off switch for the scheme, not the length of the hidden window. When it is enabled, validators commit encrypted weight sets that stay concealed until the reveal step runs; when it is disabled, the subnet does not use that concealed commit path for weights (Commit Reveal, Subnet Hyperparameters).

Commit reveal exists to reduce weight copying by delaying when fresh validator signals become visible. Enabling the flag activates that protection path on the selected netuid; it does not by itself change how Yuma Consensus aggregates weights once they are revealed (Yuma Consensus).

The protection is the delay, not permanent secrecy. Once the reveal step runs, the previously concealed weights become visible like ordinary submissions, so enabling the scheme deters copying during the hidden window rather than hiding a validator’s weights forever (Commit Reveal).

The flag is owner-tunable per subnet, so netuid 1 can keep the default while another netuid enables commit reveal, and the live value is chain state rather than a network constant (Subnet Hyperparameters, Bittensor Networks).

Documented Type, Default, and Setter

The Subnet Hyperparameters reference lists CommitRevealWeightsEnabled as a Bool with a default of false. It is changed through the sudo_set_commit_reveal_weights_enabled extrinsic, exposed in tooling as btcli sudo set --param commit_reveal_weights_enabled, and the reference marks the permission required to set it as subnet owner (Subnet Hyperparameters).

CommitRevealWeightsEnabled is also one of the rows returned by the canonical get_subnet_hyperparams_v3 runtime API, so the live flag for a subnet can be read from the current hyperparameter table rather than inferred from the default (Subnet Hyperparameters).

With the default off, subnets expose validator weights through the ordinary path unless an owner explicitly enables commit reveal for that netuid.

Pairing with the Reveal Period

Enabling the flag activates the scheme but does not set how long weights stay concealed. That window is governed by the separate CommitRevealPeriod hyperparameter, a u64 with a default of one, set through the sudo_set_commit_reveal_weights_interval extrinsic (Subnet Hyperparameters).

The reveal period is measured in tempos, not blocks. The reference notes that with a period of three and a subnet tempo of 360 blocks, committed weights are revealed after three tempos, or 1080 blocks, so the real-time concealment window scales with the subnet’s configured tempo (Subnet Hyperparameters, Commit Reveal).

Reading the enabled flag alone therefore does not reveal the concealment length; both the flag and the period must be checked together for the selected netuid (Subnet Hyperparameters).

Reading the Live Value for netuid 1

Commit reveal weights enabled is per-subnet chain state, so any live claim is tied to a specific netuid. For the documented example netuid 1 on Finney mainnet, readers can verify the live flag with btcli subnet hyperparameters --netuid 1 --network finney, which prints that subnet’s hyperparameter table including this Boolean row (Subnet Hyperparameters: View hyperparameters). The infobox uses netuid 1 only as an example label; other subnets expose their own values (Bittensor Networks).

Distinction from Commit Reveal Period

Commit reveal weights enabled decides whether the commit-reveal scheme is active on a subnet. Commit reveal period sets how many tempos must elapse before committed weights are revealed once the scheme is on (Subnet Hyperparameters, Commit Reveal).

  • Commit reveal weights enabled — whether the concealed commit path is active.
  • Commit reveal period — how many tempos the hidden window lasts when active.

Further Reading

Topics ConsensusSubnets