# `LLMProxy.Ops`
[🔗](https://github.com/elixir-vibe/llm_proxy/blob/v0.3.1/lib/llm_proxy/ops.ex#L1)

Local operational RPC surface for deployment lifecycle control.

This is intentionally separate from the Incant/admin surface. It is intended
for local deploy tooling over SafeRPC, not for public HTTP traffic.

# `drain_await`

```elixir
@spec drain_await(map(), map(), term()) :: :ok | {:error, :timeout}
```

Wait until active work reaches zero.

# `drain_cancel`

```elixir
@spec drain_cancel(map(), map(), term()) :: {:ok, map()}
```

Cancel drain mode and accept new work again.

# `drain_start`

```elixir
@spec drain_start(map(), map(), term()) :: {:ok, map()}
```

Start draining: reject new work while existing work finishes.

# `drain_status`

```elixir
@spec drain_status(map(), map(), term()) :: {:ok, map()}
```

Return current drain status.

---

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