Configure per-step failure behavior: retry with backoff (default for transient errors), skip and continue, route to a fallback path, or halt and alert. Design for failure on any step that touches external systems.
Default behavior
Transient errors (rate limits, timeouts) retry automatically with exponential backoff up to 3 attempts. Permanent errors (validation, permissions) fail the step immediately and apply your configured failure rule.
Per-step rules
Each step's settings: on-failure → retry config, skip-and-continue (for nice-to-have steps like Slack notifies), fallback path (enrichment failed → phone-only branch), or halt-and-alert (for compliance-relevant steps).
Fallback paths
A fallback is a mini-branch that runs only on failure — the pattern for graceful degradation: primary provider down → secondary provider → manual task as last resort.
Alerting
Failure alerts route to Slack/email per workflow. Set alert thresholds (alert on any failure vs failure rate above X%) so flaky-but-self-healing steps don't page anyone at 2am.