# `AgentSessionManager.Persistence.EventBuilder`
[🔗](https://github.com/nshkrdotcom/agent_session_manager/blob/v0.8.0/lib/agent_session_manager/persistence/event_builder.ex#L1)

Normalizes and validates adapter events without persisting them.

# `context`

```elixir
@type context() :: %{
  :session_id =&gt; String.t(),
  :run_id =&gt; String.t(),
  :provider =&gt; String.t(),
  optional(:correlation_id) =&gt; String.t(),
  optional(:redaction) =&gt; map()
}
```

# `process`

```elixir
@spec process(map(), context()) ::
  {:ok, AgentSessionManager.Core.Event.t()}
  | {:error, AgentSessionManager.Core.Error.t()}
```

---

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