# `Jido.Pod.Topology.Node`
[🔗](https://github.com/agentjido/jido/blob/v2.3.3/lib/jido/pod/topology/node.ex#L1)

Canonical node definition for a pod topology.

V1 nodes are durable named collaborators managed through
`Jido.Agent.InstanceManager`. The shape is intentionally small but future
compatible with richer topology kinds.

# `name`

```elixir
@type name() :: atom() | String.t()
```

# `t`

```elixir
@type t() :: %Jido.Pod.Topology.Node{
  activation: atom(),
  initial_state: map(),
  kind: atom(),
  manager: atom(),
  meta: map(),
  module: atom(),
  name: atom() | binary()
}
```

# `new`

```elixir
@spec new(name(), keyword() | map()) :: {:ok, t()} | {:error, term()}
```

Builds a validated topology node.

# `new!`

```elixir
@spec new!(name(), keyword() | map()) :: t()
```

Builds a validated topology node, raising on error.

