# `Minga.Extension.Root`
[🔗](https://github.com/jsmestad/minga/blob/main/lib/minga/extension/root.ex#L1)

Ordered supervision root for one extension declaration.

`:rest_for_one` keeps the local runtime supervisor before the permanent
lifecycle authority. Replacing the runtime supervisor therefore restarts the
Instance only after an empty local supervisor exists, while an Instance crash
leaves its runtime supervisor available for local adoption.

# `child_spec`

```elixir
@spec child_spec(keyword()) :: Supervisor.child_spec()
```

Builds the dynamic child spec for an extension root.

# `start_link`

```elixir
@spec start_link(keyword()) :: Supervisor.on_start()
```

Starts one extension root.

---

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