# `Mobus.Stepwise.Components.FsmBreakpoint`
[🔗](https://github.com/fosferon/mobus_stepwise/blob/main/lib/mobus/stepwise/components/fsm_breakpoint.ex#L1)

Breakpoint component for stepwise workflows.

Records breakpoint hits for debugging and inspection purposes.

> **Naming note**: Despite the `FsmBreakpoint` module name, this component
> operates exclusively within stepwise pipelines. The name is historical
> (predating the profile extraction) and is retained to avoid breaking
> internal pipeline references.

# `call`

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

Records breakpoint hits for debugging and inspection.

This is an ALF pipeline stage. Checks the spec's `:breakpoints` list against
the current event and state. Matching breakpoints are appended to
`runtime.breakpoint_hits` with a timestamp, and a trace entry is recorded.

Supports breakpoint types:
- `on: :event` — matches when the breakpoint value equals the event name
- `on: :state_enter` — matches when the breakpoint value equals the current state

Skipped when the event has an error status.

## Parameters

  * `event` — pipeline event map with `:spec`, `:runtime`, `:event`
  * `opts` — ALF stage options (unused)

## Returns

  * Updated event map with breakpoint hits and trace entries in runtime.

---

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