pub enum OperationError {
Shell {
exit_code: i32,
stderr: String,
},
Agent(AgentError),
Timeout {
step: String,
limit: Duration,
},
Http {
status: Option<u16>,
message: String,
},
Deserialize {
target_type: String,
reason: String,
},
Secret {
message: String,
},
}Expand description
Top-level error for any workflow operation (shell or agent).
Every public operation in ironflow returns Result<T, OperationError>.
Variants§
Shell
A shell command exited with a non-zero status code.
Fields
stderr: StringCaptured stderr, truncated to MAX_OUTPUT_SIZE.
Agent(AgentError)
An agent invocation failed.
Wraps an AgentError with full detail about the failure.
Timeout
An operation exceeded its configured timeout.
Fields
Http
An HTTP request failed at the transport layer or the response body could not be read.
Fields
Deserialize
Failed to deserialize a JSON response into the expected Rust type.
Returned by AgentResult::json
and HttpOutput::json.
Fields
Secret
The secret store failed to read or decrypt a secret.
Returned by SecretResolver::get
implementations when the underlying storage or decryption layer errors.
Implementations§
Source§impl OperationError
impl OperationError
Sourcepub fn deserialize<T>(error: impl Display) -> Self
pub fn deserialize<T>(error: impl Display) -> Self
Build a Deserialize error for type T.
Trait Implementations§
Source§impl Debug for OperationError
impl Debug for OperationError
Source§impl Display for OperationError
impl Display for OperationError
Source§impl Error for OperationError
impl Error for OperationError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl From<AgentError> for OperationError
impl From<AgentError> for OperationError
Source§fn from(source: AgentError) -> Self
fn from(source: AgentError) -> Self
Auto Trait Implementations§
impl Freeze for OperationError
impl RefUnwindSafe for OperationError
impl Send for OperationError
impl Sync for OperationError
impl Unpin for OperationError
impl UnsafeUnpin for OperationError
impl UnwindSafe for OperationError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.