Configuration
The Break node requires no configuration. This page explains placement requirements and the signal mechanism.
No configuration required: The Break node has zero configurable properties. Simply place it in the workflow designer inside a Loop body subgraph and connect incoming wires to it. When execution reaches the Break node, it automatically sets the
LoopBreakSignal in the execution memory and fires its break output port.
Properties
| Property | Type | Required | Default | Description |
|---|---|---|---|---|
| No properties — the Break node has no configuration. | ||||
Placement Requirements
The Break node must be placed within the body subgraph of a Loop node. Specifically:
- The Break node must be reachable from the Loop node's body port — either directly connected or reachable through intermediate nodes.
- The Break node must NOT be placed outside of a Loop body. Using a Break node outside a Loop has no defined effect and will not interrupt workflow execution.
- Multiple Break nodes can exist in the same loop body (e.g., inside different branches of an If Condition), but only the first one reached during any given iteration will fire.
LoopBreakSignal Mechanism
When the Break node executes, it writes the LoopBreakSignal = true flag to the execution memory. The Loop node checks this flag at the end of each iteration before deciding whether to fire the body port again or transition to the done port. The mechanism works as follows:
- Break node sets
LoopBreakSignal = truein execution memory. - Break node fires its
breakoutput port — any nodes connected to the break port execute (typically none, but available for cleanup logic). - Control returns to the enclosing Loop node.
- Loop node detects
LoopBreakSignal = true, clears the flag, and transitions to the done port instead of continuing iteration. - Done port fires with
loop_completed_normally = falseadded to the context.
Always pair with If Condition: The Break node is unconditional — execution reaching it will always exit the loop. Place the Break node on the appropriate branch of an If Condition node inside the loop body so it only fires when the exit condition is actually met. An unconditional Break placed directly on the loop body path would exit after the very first iteration.
Tip — Use a Set Variable before Break: Before the Break node fires, use a Set Variable node to record WHY the loop exited early. For example, set
breakReason = "outOfStock" or firstMatchFound = $var.current_item. This information will be available on the loop's done port for downstream routing and logging.