| One readable unit of work | <step> + <script> |
| Several independent single steps at once | <parallel> |
| Several independent multi-step lanes | <fork> + <branch> |
| Strict boolean routing | <choose> |
| Exact string routing | <switch> |
| Human decision | <approval> |
| Temporarily reusable value | services.cache |
| Small permanent workflow memory | services.state |
| Application records and queries | services.db() |
| Files or larger durable objects | services.storage |
| Familiar/streaming HTTP | fetch() |
| Supervised bounded HTTP | services.http.request() |
| Notify every subscriber of a fact | services.events.emit() |
| Wait for one child workflow's answer | services.workflows.call() |
| Start a child and continue | services.workflows.start() |
| Reusable data transformation/API wrapper | Local JS/TS module |
| Reusable durable project step | Reusable WOML step |
| Project-specific approval transport | Reusable notification provider |