DurableDashboard.GraphBuilder (DurableDashboard v0.1.0-rc)

Copy Markdown View Source

Converts a %Durable.Definition.Workflow{} into ReactFlow-compatible nodes and edges for graph visualization.

Implementation note — polymorphic prev_ids

The reduce accumulator's third element is a list of "tail ids" — the set of node ids that the next step's inbound edges should originate from. Linear steps return a one-element list. parallel returns the list of all child ids so the next step's edges fan in directly from every branch. branch returns the list of "last step in each clause" ids for the same reason. This is what lets us drop synthetic fork/join marker nodes — the n8n-style splay/converge falls out of the edge geometry alone.

Summary

Functions

Builds a ReactFlow graph from a workflow definition.

Overlays runtime step execution status onto graph nodes.

Functions

build(arg1)

Builds a ReactFlow graph from a workflow definition.

Returns %{nodes: [node], edges: [edge]}.

overlay_status(graph, step_executions, opts \\ [])

Overlays runtime step execution status onto graph nodes.

Takes graph data and a list of step execution maps (keyed by step_name), and adds status information to each node's data.