# `WorkflowStem.Components.FlowAction`
[🔗](https://github.com/fosferon/workflow_stem/blob/main/lib/workflow_stem/components/flow_action.ex#L1)

Executes declarative pipeline actions for `:flow` workflows.

For now, a flow pipeline is a list of steps under `spec.pipeline` (or
`spec.components`), where each step can reference a capability handle:

    pipeline: [
      %{type: :capability, handle: "my.capability"},
      ...
    ]

Each capability receives `%{event, payload, current_state: nil, context}` and may
return:
- `%{context: %{...}}` to merge context updates
- `%{result: any}` to replace the carried payload/result

# `call`

```elixir
@spec call(map(), map()) :: map()
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
