Skip to main content
When you run a graph, nodes don’t all execute at once. The scheduler runs them one at a time, in a deterministic order, based on edges, input readiness, and node priority.

The Big Picture

  1. The graph starts with a trigger node.
  2. That node runs and produces items on its outputs.
  3. Items flow along edges to downstream nodes.
  4. Any node whose inputs are ready gets queued to run next.
This repeats until there are no runnable nodes left.

What Is an Item?

An Item is the unit of data that flows through the graph.
  • Each output emits a list of items.
  • Each input consumes items from its upstream connections.
  • Items carry history, so downstream nodes can trace where data came from.
Think of an item as a wrapped payload that also remembers the path it took.

Node Priorities

Each node has a priority that helps break ties when multiple nodes are ready at the same time. Priority is determined as follows:
  • Nodes are sorted by canvas position (left-to-right, then top-to-bottom).
  • That sorted order becomes the node’s priority index.
So node position on the canvas matters: nodes further left (and higher) get higher priority and tend to run earlier when multiple nodes are ready.

Execution Order Rules (Summary)

  • The trigger node always runs first.
  • After a node completes, its outputs are buffered.
  • A downstream node becomes ready when all its required inputs are available.
  • Ready nodes are added to the queue, ordered by priority chain.
This makes execution deterministic even when multiple branches are active.