# `ASM.History`
[🔗](https://github.com/nshkrdotcom/agent_session_manager/blob/v0.9.2/lib/asm/history.ex#L1)

Replay and rebuild helpers on top of `ASM.Store`.

# `rebuild_run`

```elixir
@spec rebuild_run(pid(), String.t(), String.t()) ::
  {:ok,
   %{state: ASM.Run.State.t(), result: ASM.Result.t(), events: [ASM.Event.t()]}}
  | {:error, ASM.Error.t()}
```

# `replay_session`

```elixir
@spec replay_session(pid(), String.t(), term(), (term(), ASM.Event.t() -&gt; term())) ::
  {:ok, term()} | {:error, ASM.Error.t()}
```

---

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