Sigil documentation
ReferenceRust referencesigil-validator-agent

sigil-validator-agent · config

Source declarations, signatures and documentation for config.

Source: sigil/node/sigil-validator-agent/src/config.rs. SHA-256: 060dce9e40b08c2b077dee1422ab591095d89fba4f4c918bf6e1d1a81a419101.

This reference follows declared source modules, retains conditional attributes, and includes public declarations and implementation methods. Private-module re-exports and trait resolution require the compiler; this is a source reference, not a claim that every listed item is a root import. Function bodies and constant values are omitted.

config::Config

Top-level configuration. Loaded from TOML in production deployments.

#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct Config {
/// DID this validator-agent identifies as. Used to sign outbound

/// `GovernancePropose` transactions and to authenticate WebSocket

/// subscriptions to the RPC node.

pub agent_did: String,
/// Path or HSM-handle URL for the agent's signing key. In

/// production this is an HSM URL, never a raw file in cleartext.

pub key_path: String,
pub rpc: RpcConfig,
pub l1: L1Config,
pub l2: L2Config,
pub l3: L3Config,
pub governance: GovernanceConfig
}

Source line: 10.

config::RpcConfig

#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct RpcConfig {
pub ws_url: String,
pub http_url: String,
pub reconnect_backoff_initial_ms: u64,
pub reconnect_backoff_max_ms: u64
}

Source line: 28.

config::L1Config

#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct L1Config {
/// Filesystem path to a local cache of approved rule code blobs,

/// refreshed at epoch boundary by querying the on-chain registry.

pub rule_cache_path: String
}

Source line: 47.

config::L2Config

#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct L2Config {
/// Sample rate for L2 triage in basis points. 100 = 1%.

pub base_sample_bps: u32,
/// Severity-weighted boosts. 10000 = 100%.

pub sample_boost_medium_bps: u32,
pub sample_boost_high_bps: u32,
pub sample_boost_critical_bps: u32,
/// Local distilled-model endpoint.

pub endpoint: String,
pub model: String
}

Source line: 62.

config::L3Config

#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct L3Config {
/// Per-epoch cycle ceiling. Exceeding this hard-stops L3 dispatch

/// for the rest of the epoch.

pub cycles_budget_per_epoch: u64,
/// Default capability tag for routing.

pub default_capability_tag: String,
/// Maximum dispatches per minute regardless of cycle budget.

pub rate_limit_per_minute: u32
}

Source line: 88.

config::GovernanceConfig

#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct GovernanceConfig {
/// If true, the runtime queues L3-recommended governance actions for

/// an external signer/submission bridge. Default false.

pub auto_submit_proposals: bool,
/// Action allowlist when `auto_submit_proposals` is true.

pub allowed_actions: Vec<String>
}

Source line: 109.

config::Config::safe_defaults_for_test

Build a config with safe defaults for testing. Production deployments MUST load from operator-managed TOML, not this default.

pub fn safe_defaults_for_test(agent_did: impl Into<String>) -> Self;

Source line: 129.

On this page