swarm-engine-core 0.1.6

Core types and orchestration for SwarmEngine
Documentation
//! Orchestrator の設定と結果型

use std::time::Duration;

use crate::agent::ManagementStrategy;

/// Swarm 実行結果
#[derive(Debug, Clone, Copy)]
pub struct SwarmResult {
    pub total_ticks: u64,
    pub total_duration: Duration,
    pub completed: bool,
}

/// Swarm 設定
#[derive(Debug, Clone)]
pub struct SwarmConfig {
    /// Tick間隔(デフォルト: 10ms)
    pub tick_duration: Duration,
    /// 最大Tick数(0 = 無制限)
    pub max_ticks: u64,
    /// Manager 起動戦略
    pub management_strategy: ManagementStrategy,
}

impl Default for SwarmConfig {
    fn default() -> Self {
        Self {
            tick_duration: Duration::from_millis(10),
            max_ticks: 0,
            management_strategy: ManagementStrategy::FixedInterval { interval: 10 },
        }
    }
}