# `ASM.Run.EventReducer`
[🔗](https://github.com/nshkrdotcom/agent_session_manager/blob/v0.9.2/lib/asm/run/event_reducer.ex#L1)

Deterministic reducer from run-scoped events to result projections.

# `apply_event!`

```elixir
@spec apply_event!(ASM.Run.State.t(), ASM.Event.t()) :: ASM.Run.State.t()
```

# `final?`

```elixir
@spec final?(ASM.Run.State.t()) :: boolean()
```

# `to_result`

```elixir
@spec to_result(ASM.Run.State.t()) :: ASM.Result.t()
```

---

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