<parallel>

<parallel> starts several independent single-step operations concurrently.

Why use it

Use it to reduce elapsed time when multiple operations depend on the same prior context but not on each other.

Common use cases

  • Check stock and risk concurrently.
  • Fetch independent data sources in parallel.
  • Run bounded concurrent validations before aggregation.

Syntax

WOML
<parallel id="checks" concurrency="2" on-error="wait-all">
  <step id="stockCheck"><script>return checkStock();</script></step>
  <step id="riskCheck"><script>return checkRisk();</script></step>
</parallel>

Rules and behavior

  • id is required; it identifies the group but does not publish an aggregate output.
  • It contains one or more direct <step> children only.
  • Every child sees the same pre-parallel context and cannot reference sibling output.
  • concurrency defaults to child count and cannot exceed it.
  • on-error is fail-fast or wait-all; continue is unsupported.
  • Add a downstream step to aggregate child results.