# `Pristine.RuntimeCapabilities`
[🔗](https://github.com/nshkrdotcom/pristine/blob/pristine-v0.4.0/lib/pristine/runtime_capabilities.ex#L1)

Provider-neutral discovery for the configured runtime transport contract.

Capability discovery is fail-closed. A missing callback, absent capability,
malformed advertisement, or callback failure is reported as `:unverified`.
Explicit `false`/`:unsupported` is reported as `:unsupported`.

A capability advertisement is a transport adapter's declared contract. For
Pristine-owned adapters, `:supported` is only published after Pristine's own
acceptance tests prove the behavior. Third-party adapter authors remain
responsible for conformance with their declarations.

Capability callbacks must be side-effect free and must never return request
bodies, credentials, headers, or other context secrets.

# `capability`

```elixir
@type capability() :: %{
  :status =&gt; capability_status(),
  optional(:value) =&gt; non_neg_integer()
}
```

# `capability_status`

```elixir
@type capability_status() :: :supported | :unsupported | :unverified
```

# `transport_capabilities`

```elixir
@type transport_capabilities() :: %{
  adapter: module() | nil,
  capabilities: %{optional(atom()) =&gt; capability()}
}
```

# `supported?`

```elixir
@spec supported?(Pristine.Core.Context.t() | Pristine.Client.t(), atom()) :: boolean()
```

Return true only when a transport positively advertises a capability.

# `transport`

```elixir
@spec transport(Pristine.Core.Context.t() | Pristine.Client.t()) ::
  transport_capabilities()
```

Inspect the configured unary transport without performing a request.

---

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