Skip to content

RFC-0006 — Sampling randomness

Owner: Verification Lead

What it defines

How validators randomly sample inferences for replay so neither operator nor validator can predict which jobs will be audited.

Mechanism: commit-reveal

This is the target RFC flow. The current pallet-yuma-consensus runtime surface does not yet expose commit or reveal extrinsics.

  1. Per epoch, each validator commits a hash H_i = BLAKE2(secret_i).
  2. One epoch later, each validator reveals secret_i. Defectors lose one epoch of emissions (2nd offense loses permit).
  3. Epoch random seed = XOR(all revealed secrets).
  4. Per-receipt sample selection: Fisher-Yates over stake-weighted operator set seeded by BLAKE2(seed || receipt_merkle_root || batch_id).

Sample rate floor

  • dc-premium ≥10%
  • dc-standard ≥10%
  • cloud-rented ≥15%
  • prosumer ≥25%

Higher tier sample rates for lower-trust tiers.

Canonical source

chain-tooling-rust/specs/RFC-0006-sampling-randomness.md