# `Selecto.Domain.Sections`

Top-level Selecto domain section classification.

The registry is intentionally diagnostic-only. It tells callers how a domain's
authored top-level keys are understood without changing runtime configuration
behavior.

# `categories`

```elixir
@spec categories() :: [:canonical | :projection | :proposed | :unknown]
```

Returns the diagnostic section categories in stable order.

# `classify`

```elixir
@spec classify(term()) :: :canonical | :projection | :proposed | :unknown
```

Classifies a single top-level domain section key.

# `classify_top_level_keys`

```elixir
@spec classify_top_level_keys(map()) :: %{
  canonical: [term()],
  projection: [term()],
  proposed: [term()],
  unknown: [term()]
}
```

Classifies all authored top-level keys in a domain map.

Returned section lists preserve the authored key values while sorting them for
deterministic diagnostics and tests.

---

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