runifold_workflow/outcome.rs
1use std::collections::BTreeMap;
2
3use runifold_core::Usage;
4use serde::{Deserialize, Serialize};
5use serde_json::Value;
6
7use crate::StepId;
8
9/// Successful terminal workflow state.
10#[derive(Clone, Debug, Deserialize, PartialEq, Serialize)]
11pub struct WorkflowOutcome {
12 /// Output of the final executed node.
13 pub output: Value,
14 /// Stable output captured after every completed node.
15 pub steps: BTreeMap<StepId, Value>,
16 /// Shared run-tree usage snapshot at completion.
17 pub usage: Usage,
18}