# `Wardrik.Operations.Deployment`

Operations on the deployment: the audit, nodes, moving agents and reloading.

# `audit`

```elixir
@spec audit(Wardrik.Scope.t(), map()) :: {:ok, map()}
```

Returns a page of the deployment's audit.

# `move`

```elixir
@spec move(Wardrik.Scope.t(), map()) :: {:ok, map()} | {:error, Wardrik.Error.t()}
```

Moves an agent to another node.

# `nodes`

```elixir
@spec nodes(Wardrik.Scope.t(), map()) :: {:ok, map()}
```

Lists the deployment's nodes with how many agents run on each, and how many are asleep.

# `reload`

```elixir
@spec reload(Wardrik.Scope.t(), map()) :: {:ok, map()}
```

Reloads the deployment:

  1. Reloads the declarations. See `Wardrik.Declarations`.
  2. Updates running agents to their current definitions. Only those `"resources"` covers, if
     given.
  3. Reconciles MCP servers and triggers.

Returns the node reloaded, and a line for each declaration problem.

---

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