pub struct ProtocolMachineConfig {Show 25 fields
pub config_schema_version: u32,
pub sched_policy: SchedPolicy,
pub buffer_config: BufferConfig,
pub max_sessions: usize,
pub max_coroutines: usize,
pub num_registers: u16,
pub tick_duration: Duration,
pub guard_layers: Vec<GuardLayerConfig>,
pub speculation_enabled: bool,
pub determinism_mode: DeterminismMode,
pub effect_determinism_tier: EffectDeterminismTier,
pub output_condition_policy: OutputConditionPolicy,
pub monitor_mode: MonitorMode,
pub flow_policy: FlowPolicy,
pub instruction_cost: usize,
pub initial_cost_budget: usize,
pub footprint_guided_wave_widening: bool,
pub runtime_tuning_profile: RuntimeTuningProfile,
pub threaded_round_semantics: ThreadedRoundSemantics,
pub effect_trace_capture_mode: EffectTraceCaptureMode,
pub observability_retention: ObservabilityRetentionConfig,
pub payload_validation_mode: PayloadValidationMode,
pub communication_replay_mode: CommunicationReplayMode,
pub max_payload_bytes: usize,
pub host_contract_assertions: HostContractMode,
}Expand description
ProtocolMachine configuration.
Fields§
§config_schema_version: u32Migration-safe config schema version.
sched_policy: SchedPolicyScheduling policy.
buffer_config: BufferConfigDefault buffer configuration for new sessions.
max_sessions: usizeMaximum number of concurrent sessions.
max_coroutines: usizeMaximum number of concurrent coroutines.
num_registers: u16Number of registers per coroutine.
tick_duration: DurationSimulated time per scheduler round.
guard_layers: Vec<GuardLayerConfig>Guard layers configured for the ProtocolMachine.
speculation_enabled: boolWhether speculative execution is enabled.
determinism_mode: DeterminismModeDeterminism profile for replay/equivalence behavior.
effect_determinism_tier: EffectDeterminismTierEffect determinism tier used by admission and envelope artifacts.
output_condition_policy: OutputConditionPolicyOutput-condition policy for commit eligibility of observable outputs.
monitor_mode: MonitorModeMonitor mode for pre-dispatch type checks.
flow_policy: FlowPolicyFlow policy for epistemic knowledge checks.
instruction_cost: usizeDeterministic cost charged for each instruction dispatch.
initial_cost_budget: usizeInitial cost budget assigned to each coroutine.
footprint_guided_wave_widening: boolWhether threaded scheduler may admit same-session picks when footprint-disjoint.
runtime_tuning_profile: RuntimeTuningProfileRuntime tuning profile used by instrumentation/benchmark harnesses.
threaded_round_semantics: ThreadedRoundSemanticsRound semantics mode used by threaded scheduler.
effect_trace_capture_mode: EffectTraceCaptureModeEffect-trace capture mode for integration/perf tuning.
observability_retention: ObservabilityRetentionConfigRetention policy for observable and diagnostic artifacts.
payload_validation_mode: PayloadValidationModeRuntime payload hardening mode for inbound/outbound messages.
communication_replay_mode: CommunicationReplayModeCommunication replay-consumption mode.
max_payload_bytes: usizeUpper bound for ProtocolMachine payload values in estimated wire bytes.
host_contract_assertions: HostContractModeRuntime host-contract assertion mode with deterministic diagnostics.
Implementations§
Source§impl ProtocolMachineConfig
impl ProtocolMachineConfig
Sourcepub fn validate_invariants(&self) -> Result<(), String>
pub fn validate_invariants(&self) -> Result<(), String>
Validate ProtocolMachine configuration invariants required for safe state initialization.
§Errors
Returns a reason string if a required invariant is violated.
Sourcepub fn assert_invariants(&self)
pub fn assert_invariants(&self)
Assert ProtocolMachine configuration invariants required for safe state initialization.
§Panics
Panics when a required invariant is violated.
Sourcepub fn strict_minimal() -> Self
pub fn strict_minimal() -> Self
Deterministic baseline profile with minimal retained instrumentation.
Sourcepub fn strict_observable() -> Self
pub fn strict_observable() -> Self
Deterministic profile with full observable/effect tracing enabled.
Sourcepub fn strict_verified() -> Self
pub fn strict_verified() -> Self
Deterministic profile with strict validation and replay tracking enabled.
Sourcepub fn strict_churn() -> Self
pub fn strict_churn() -> Self
Deterministic churn profile for repeated short-lived sessions.
Sourcepub fn strict_buffer_pressure() -> Self
pub fn strict_buffer_pressure() -> Self
Deterministic buffer-pressure profile for allocator and queue stress.
Sourcepub fn strict_large_fanout() -> Self
pub fn strict_large_fanout() -> Self
Deterministic large-fanout profile for scheduler and metadata scaling tests.
Trait Implementations§
Source§impl Clone for ProtocolMachineConfig
impl Clone for ProtocolMachineConfig
Source§fn clone(&self) -> ProtocolMachineConfig
fn clone(&self) -> ProtocolMachineConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more