Skip to main content

NodeExecutionData

Enum NodeExecutionData 

Source
pub enum NodeExecutionData {
Show 22 variants Start { next: String, }, Llm { model: String, output: String, next: String, }, Tool { tool: String, output: Value, next: String, }, Condition { expression: String, evaluated: bool, next: String, }, Debounce { key: String, suppressed: bool, next: String, }, Throttle { key: String, throttled: bool, next: String, }, RetryCompensate { tool: String, attempts: usize, compensated: bool, output: Value, next: String, }, HumanInTheLoop { approved: bool, response: Value, next: String, }, CacheRead { key: String, hit: bool, value: Value, next: String, }, CacheWrite { key: String, value: Value, next: String, }, EventTrigger { event: String, matched: bool, next: String, }, Router { selected: String, next: String, }, Transform { expression: String, output: Value, next: String, }, Loop { condition: String, evaluated: bool, iteration: u32, next: String, }, Subgraph { graph: String, terminal_node_id: String, output: Value, next: String, }, Batch { items_path: String, item_count: usize, next: String, }, Filter { items_path: String, expression: String, kept: usize, next: String, }, Parallel { branches: Vec<String>, outputs: BTreeMap<String, Value>, next: String, }, Merge { policy: MergePolicy, sources: Vec<String>, output: Value, next: String, }, Map { item_count: usize, output: Value, next: String, }, Reduce { operation: ReduceOperation, output: Value, next: String, }, End,
}
Expand description

Structured result data emitted for each node.

Variants§

§

Start

Start node transition.

Fields

§next: String

Next node id.

§

Llm

LLM node output.

Fields

§model: String

Model used.

§output: String

Assistant output text.

§next: String

Next node id.

§

Tool

Tool node output.

Fields

§tool: String

Tool name.

§output: Value

Tool output JSON payload.

§next: String

Next node id.

§

Condition

Condition node decision.

Fields

§expression: String

Original expression.

§evaluated: bool

Evaluated bool.

§next: String

Chosen next node id.

§

Debounce

Debounce gate decision.

Fields

§key: String

Resolved debounce key.

§suppressed: bool

Whether the event was suppressed.

§next: String

Chosen next node id.

§

Throttle

Throttle gate decision.

Fields

§key: String

Resolved throttle key.

§throttled: bool

Whether the event was throttled.

§next: String

Chosen next node id.

§

RetryCompensate

Explicit retry/compensation execution result.

Fields

§tool: String

Primary tool name.

§attempts: usize

Total primary attempts executed.

§compensated: bool

Whether compensation path was used.

§output: Value

Node output payload.

§next: String

Chosen next node id.

§

HumanInTheLoop

Human decision result.

Fields

§approved: bool

True when approved.

§response: Value

Optional human payload routed through the node.

§next: String

Chosen next node id.

§

CacheRead

Cache read result.

Fields

§key: String

Cache key.

§hit: bool

True when key was found.

§value: Value

Returned value (null on miss).

§next: String

Chosen next node id.

§

CacheWrite

Cache write result.

Fields

§key: String

Cache key.

§value: Value

Stored value.

§next: String

Next node id.

§

EventTrigger

Event trigger evaluation result.

Fields

§event: String

Expected event name.

§matched: bool

True when input event matched.

§next: String

Chosen next node id.

§

Router

Router/selector decision.

Fields

§selected: String

Selected route node id.

§next: String

Chosen next node id.

§

Transform

Transform node output.

Fields

§expression: String

Original transform expression.

§output: Value

Evaluated output payload.

§next: String

Next node id.

§

Loop

Loop node decision.

Fields

§condition: String

Original loop condition.

§evaluated: bool

Evaluated bool.

§iteration: u32

Current iteration when entering body. Zero when exiting loop.

§next: String

Chosen next node id.

§

Subgraph

Subgraph execution result.

Fields

§graph: String

Subgraph registry key.

§terminal_node_id: String

Subgraph terminal node id.

§output: Value

Aggregated subgraph node outputs.

§next: String

Next node id.

§

Batch

Batch extraction result.

Fields

§items_path: String

Source path used for extraction.

§item_count: usize

Number of extracted items.

§next: String

Next node id.

§

Filter

Filter evaluation result.

Fields

§items_path: String

Source path used for extraction.

§expression: String

Filter predicate expression.

§kept: usize

Number of retained items.

§next: String

Next node id.

§

Parallel

Parallel node aggregate result.

Fields

§branches: Vec<String>

Branch node ids executed by this node.

§outputs: BTreeMap<String, Value>

Branch outputs keyed by branch node id.

§next: String

Next node id.

§

Merge

Merge node aggregate output.

Fields

§policy: MergePolicy

Merge policy used.

§sources: Vec<String>

Source node ids consumed.

§output: Value

Merged value.

§next: String

Next node id.

§

Map

Map node output.

Fields

§item_count: usize

Number of input items mapped.

§output: Value

Collected mapped values in source order.

§next: String

Next node id.

§

Reduce

Reduce node output.

Fields

§operation: ReduceOperation

Reduce operation executed.

§output: Value

Reduced result.

§next: String

Next node id.

§

End

End node reached.

Trait Implementations§

Source§

impl Clone for NodeExecutionData

Source§

fn clone(&self) -> NodeExecutionData

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for NodeExecutionData

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for NodeExecutionData

Source§

fn eq(&self, other: &NodeExecutionData) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for NodeExecutionData

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FromRef<T> for T
where T: Clone,

Source§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
Source§

impl<T> FutureExt for T

Source§

fn with_context(self, otel_cx: Context) -> WithContext<Self>

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
Source§

fn with_current_context(self) -> WithContext<Self>

Attaches the current Context to this type, returning a WithContext wrapper. Read more
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoRequest<T> for T

Source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more