The Big Picture
ValidatorTrust specifically measures how much the network trusts a validator's weight-setting behavior. High validator trust means this validator's ratings are consistent with others and contribute positively to consensus. Low trust suggests erratic or adversarial scoring patterns.
Why This Matters
Not all validators are equal. ValidatorTrust tells you which validators the network considers reliable. High trust validators have their weights taken more seriously in consensus.
Example Scenario
Query ValidatorTrust(netuid=1, uid=5) returns 0.89 (normalized u16 = ~58327). This validator has 89% trust - the network considers their ratings reliable. Below 50% is concerning.
Common Questions
- How is ValidatorTrust different from Trust?
- Trust applies to all neurons (how consistently they're rated). ValidatorTrust is specific to validators (how reliable their ratings are). Only weight-setters have meaningful ValidatorTrust.
- Does low ValidatorTrust affect earnings?
- Yes, validators with low trust have less influence on consensus, which can affect their dividend earnings.
- How can a validator improve their trust?
- Set weights that align with network consensus, avoid erratic changes, and maintain consistent evaluation criteria.
Use Cases
- Evaluate a validator before delegating stake
- Monitor your validator's standing in the network
- Build validator reputation and ranking systems
- Identify potentially malicious or incompetent validators
- Research validator behavior patterns
Purpose & Usage
Purpose
Track trust for validators specifically - how much the network trusts this validator's judgments.
Common Query Patterns
- Query by netuid-uid for a specific validator
- Compare validator trust scores across the subnet
- Track trust changes over time
Query Keys
| # | Name | Type | Description |
|---|---|---|---|
| 1 | key1 | u16 | key1 (u16) |
Stored Value
value (Vec<u16>)
Relationships
Modified By
Related Events
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 });
// Query ValidatorTrust storage
const key1 = 0;
const result = await api.query
[stringCamelCase("SubtensorModule")]
[stringCamelCase("ValidatorTrust")](
key1
);
console.log("ValidatorTrust:", result.toHuman());On-Chain Activity
100K–1M estimated writes
#39 most written storage item
Modified by both user extrinsics and runtime hooks
As of block 7,429,232
Runtime Info
View Source- Pallet
- SubtensorModule
- Storage Kind
- Map
- First Version
- v101
- Current Version
- v393