pub struct SessionQueueConfig {Show 16 fields
pub control_max_concurrency: usize,
pub query_max_concurrency: usize,
pub execute_max_concurrency: usize,
pub generate_max_concurrency: usize,
pub lane_handlers: HashMap<SessionLane, LaneHandlerConfig>,
pub enable_dlq: bool,
pub dlq_max_size: Option<usize>,
pub enable_metrics: bool,
pub enable_alerts: bool,
pub default_timeout_ms: Option<u64>,
pub storage_path: Option<PathBuf>,
pub retry_policy: Option<RetryPolicyConfig>,
pub rate_limit: Option<RateLimitConfig>,
pub priority_boost: Option<PriorityBoostConfig>,
pub pressure_threshold: Option<usize>,
pub lane_timeouts: HashMap<SessionLane, u64>,
}Expand description
Configuration for a session command queue
Fields§
§control_max_concurrency: usizeMax concurrency for Control lane (P0)
query_max_concurrency: usizeMax concurrency for Query lane (P1)
execute_max_concurrency: usizeMax concurrency for Execute lane (P2)
generate_max_concurrency: usizeMax concurrency for Generate lane (P3)
lane_handlers: HashMap<SessionLane, LaneHandlerConfig>Handler configurations per lane
enable_dlq: boolEnable dead letter queue for failed commands
dlq_max_size: Option<usize>Max size of dead letter queue (None = use default 1000)
enable_metrics: boolEnable metrics collection
enable_alerts: boolEnable queue alerts
default_timeout_ms: Option<u64>Default timeout for commands in milliseconds
storage_path: Option<PathBuf>Persistent storage path (None = in-memory only)
retry_policy: Option<RetryPolicyConfig>Retry policy configuration
rate_limit: Option<RateLimitConfig>Rate limit configuration
priority_boost: Option<PriorityBoostConfig>Priority boost configuration
pressure_threshold: Option<usize>Pressure threshold for emitting pressure/idle events
lane_timeouts: HashMap<SessionLane, u64>Per-lane timeout overrides in milliseconds
Implementations§
Source§impl SessionQueueConfig
impl SessionQueueConfig
Sourcepub fn max_concurrency(&self, lane: SessionLane) -> usize
pub fn max_concurrency(&self, lane: SessionLane) -> usize
Get max concurrency for a lane
Sourcepub fn handler_config(&self, lane: SessionLane) -> LaneHandlerConfig
pub fn handler_config(&self, lane: SessionLane) -> LaneHandlerConfig
Get handler config for a lane (returns default if not configured)
Sourcepub fn with_dlq(self, max_size: Option<usize>) -> Self
pub fn with_dlq(self, max_size: Option<usize>) -> Self
Enable dead letter queue with optional max size
Sourcepub fn with_metrics(self) -> Self
pub fn with_metrics(self) -> Self
Enable metrics collection
Sourcepub fn with_alerts(self) -> Self
pub fn with_alerts(self) -> Self
Enable queue alerts
Sourcepub fn with_timeout(self, timeout_ms: u64) -> Self
pub fn with_timeout(self, timeout_ms: u64) -> Self
Set default timeout for commands
Sourcepub fn with_storage(self, path: impl Into<PathBuf>) -> Self
pub fn with_storage(self, path: impl Into<PathBuf>) -> Self
Set persistent storage path
Sourcepub fn with_lane_features(self) -> Self
pub fn with_lane_features(self) -> Self
Enable all a3s-lane features with sensible defaults
Trait Implementations§
Source§impl Clone for SessionQueueConfig
impl Clone for SessionQueueConfig
Source§fn clone(&self) -> SessionQueueConfig
fn clone(&self) -> SessionQueueConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more