greentic_runner_host/engine/
error.rs

1use thiserror::Error;
2
3/// Unified error across the new runner stack.
4#[derive(Debug, Error)]
5pub enum RunnerError {
6    #[error("flow '{flow_id}' not registered")]
7    FlowNotFound { flow_id: String },
8
9    #[error("adapter '{adapter}' not registered")]
10    AdapterMissing { adapter: String },
11
12    #[error("adapter call failed: {reason}")]
13    AdapterCall { reason: String },
14
15    #[error("session error: {reason}")]
16    Session { reason: String },
17
18    #[error("state error: {reason}")]
19    State { reason: String },
20
21    #[error("policy violation: {reason}")]
22    Policy { reason: String },
23
24    #[error("telemetry error: {reason}")]
25    Telemetry { reason: String },
26
27    #[error("secret error: {reason}")]
28    Secrets { reason: String },
29
30    #[error("serialization error: {reason}")]
31    Serialization { reason: String },
32}
33
34/// Result alias for runner operations.
35pub type GResult<T> = Result<T, RunnerError>;