pub struct KernelConfig {
pub keypair: Keypair,
pub ca_public_keys: Vec<PublicKey>,
pub max_delegation_depth: u32,
pub policy_hash: String,
pub allow_sampling: bool,
pub allow_sampling_tool_use: bool,
pub allow_elicitation: bool,
pub max_stream_duration_secs: u64,
pub max_stream_total_bytes: u64,
pub require_web3_evidence: bool,
pub checkpoint_batch_size: u64,
pub retention_config: Option<RetentionConfig>,
}Expand description
Configuration for the Chio Runtime Kernel.
Fields§
§keypair: KeypairEd25519 keypair for signing receipts and issuing capabilities.
ca_public_keys: Vec<PublicKey>Public keys of trusted Capability Authorities.
max_delegation_depth: u32Maximum allowed delegation depth.
policy_hash: StringSHA-256 hash of the active policy (embedded in receipts).
allow_sampling: boolWhether nested sampling requests are allowed at all.
allow_sampling_tool_use: boolWhether sampling requests may include tool-use affordances.
allow_elicitation: boolWhether nested elicitation requests are allowed.
max_stream_duration_secs: u64Maximum total wall-clock duration permitted for one streamed tool result.
max_stream_total_bytes: u64Maximum total canonical payload size permitted for one streamed tool result.
require_web3_evidence: boolWhether durable receipts and kernel-signed checkpoints are mandatory prerequisites for this deployment.
checkpoint_batch_size: u64Number of receipts between Merkle checkpoint snapshots. Default: 100.
Set to 0 to disable automatic checkpointing for deployments that do not require web3 evidence.
retention_config: Option<RetentionConfig>Optional receipt retention configuration.
When None (default), retention is disabled and receipts accumulate
indefinitely. When Some(config), the kernel will archive receipts
that exceed the time or size threshold.