Approval and data forms are first-class on the canvas. Drag upstream fields onto a form. Each button you draw becomes its own outgoing edge. Route to roles, emails, or data values — not static names.
Most platforms stuff approvals into a sidebar. Here a form is a node with its own inputs, its own outputs, and a separate outgoing edge for every button — so the graph stays readable at a glance.
The form designer sees every typed output from upstream nodes. Drop "risk score" or "customer name" onto the form — bound, not copy-pasted.
"Approve" and "Deny" go to different graphs. The branching is visible on the canvas, not hidden in form config.
Assign to {{customer.account_manager}} instead of "Sarah." When the data changes, the routing follows.
Show the LLM's risk explanation as read-only. Capture the reviewer's notes as editable. Both flow downstream.
Per-form SLA. Auto-escalate after N hours. Reminder cadence. All visible in the run timeline; no Slack workflow off to the side.
Form submissions are graph state. Replay walks past completed forms with the same answers — or lets you edit and rerun from there.
30 minutes. We pick a multi-step approval from your stack and build it on the canvas — forms, routing, SLAs, the whole thing.