# `Tay.Executor.SocketPath`
[🔗](https://github.com/AndriiSydorenko1904/tay/blob/v1.6.1/lib/tay/executor/socket_path.ex#L1)

Deterministic local Executor Protocol v1 socket discovery.

The same algorithm is implemented by the reference SDKs: an explicit path
wins, followed by `TAY_SOCKET_PATH`, then a usable XDG runtime directory, a
usable `TMPDIR`, and finally a per-UID `/tmp` directory. Automatic paths own
their final directory and request mode `0700`; explicit/environment paths
never cause Tay to chmod a caller-owned parent directory.

# `resolved`

```elixir
@type resolved() :: %{
  path: binary() | nil,
  private_directory: boolean(),
  source: atom()
}
```

# `resolve`

```elixir
@spec resolve(:auto | nil | binary(), keyword()) ::
  {:ok, resolved()} | {:error, atom()}
```

---

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