# `Quic.Inspector`
[🔗](https://github.com/gsmlg-dev/http_fetch/blob/v1.0.0-rc.9/apps/elixir_quic/lib/quic/inspector.ex#L1)

Passive, bounded QUIC v1 Initial observation.

`new/1` creates a flow table and `ingest/2` accepts a `Quic.Runtime.Datagram`
(or an equivalent map containing `bytes`, `remote`, `generation` and
`received_at`). It only emits observation maps; it never sends protocol
packets or exposes TLS secrets. Each Initial key context has an independent
packet-number reconstruction window and sparse CRYPTO interval store.

# `t`

```elixir
@type t() :: %Quic.Inspector{contexts: term(), limits: term(), total_contexts: term()}
```

# `ingest`

```elixir
@spec ingest(t(), Quic.Runtime.Datagram.t() | map()) ::
  {:ok, t(), [map()]} | {:error, term(), t()}
```

# `new`

```elixir
@spec new(keyword()) :: {:ok, t()} | {:error, term()}
```

---

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