# `ASM.ProviderBackend.Info`
[🔗](https://github.com/nshkrdotcom/agent_session_manager/blob/v0.9.2/lib/asm/provider_backend.ex#L36)

ASM-owned backend metadata contract consumed by the orchestration kernel.

# `session`

```elixir
@type session() :: %{pid: pid() | nil, details: map()}
```

# `t`

```elixir
@type t() :: %ASM.ProviderBackend.Info{
  backend: module(),
  capabilities: [atom()],
  lane: atom() | nil,
  observability: map(),
  provider: atom() | nil,
  runtime: module(),
  session: session()
}
```

# `merge_observability`

```elixir
@spec merge_observability(t(), map()) :: t()
```

# `new`

```elixir
@spec new(keyword() | map()) :: t()
```

# `normalize`

```elixir
@spec normalize(t() | term(), keyword() | map()) :: t()
```

# `session_event_tag`

```elixir
@spec session_event_tag(term(), atom() | nil) :: atom() | nil
```

---

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