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.
sigil-validator-agent
Off-chain validator-agent runtime for Sigil. Subscribes to chain events, runs sigil-anomaly L1 rules, samples for L2 small-model triage, dispatches L3 large-model inference via dispatch_compute, aggregates results, optionally submits governance proposals. Code-enforced airgap: this crate has zero deps on sigil-consensus, sigil-tower, sigil-execution, sigil-state, sigil-storage, sigil-network, sigil-node, sigil-rpc (server). It is a CLIENT of the chain, not part of the chain.
sigil-validator-agent · crate
Source declarations, signatures and documentation for crate.