swarm-engine-eval 0.1.6

Evaluation framework for SwarmEngine
Documentation
//! Error types for swarm-engine-eval

use thiserror::Error;

/// Evaluation error
#[derive(Error, Debug)]
pub enum EvalError {
    /// Configuration error
    #[error("Configuration error: {0}")]
    Config(String),

    /// IO error
    #[error("IO error: {0}")]
    Io(#[from] std::io::Error),

    /// TOML parse error
    #[error("TOML parse error: {0}")]
    TomlParse(#[from] toml::de::Error),

    /// JSON error
    #[error("JSON error: {0}")]
    Json(#[from] serde_json::Error),

    /// SwarmApp error
    #[error("SwarmApp error: {0}")]
    SwarmApp(String),

    /// Session error
    #[error("Session error: {0}")]
    Session(String),

    /// Assertion failure
    #[error("Assertion failed: {name} - expected {expected}, got {actual}")]
    AssertionFailed {
        name: String,
        expected: String,
        actual: String,
    },

    /// Statistics error
    #[error("Statistics error: {0}")]
    Statistics(String),

    /// Orchestrator error (from swarm-engine-core)
    #[error("Orchestrator error: {0}")]
    Orchestrator(#[from] swarm_engine_core::error::SwarmError),
}

/// Result type for swarm-engine-eval
pub type Result<T> = std::result::Result<T, EvalError>;