# `Scrypath.Operator.Status`
[🔗](https://github.com/szTheory/scrypath/blob/v0.3.5/lib/scrypath/operator/status.ex#L1)

Read-only sync visibility returned by `Scrypath.sync_status/2`.

Status keeps backend-side and queue-side observations distinct so queued or
retryable work never reads like completed backend visibility.

# `backend_section`

```elixir
@type backend_section() :: %{
  pending: [Scrypath.Operator.State.t()],
  failed: [Scrypath.Operator.State.t()],
  last_succeeded: Scrypath.Operator.State.t() | nil
}
```

# `section`

```elixir
@type section() :: %{
  optional(:observed?) =&gt; boolean(),
  pending: [Scrypath.Operator.State.t()],
  retrying: [Scrypath.Operator.State.t()],
  failed: [Scrypath.Operator.State.t()],
  last_succeeded: Scrypath.Operator.State.t() | nil
}
```

# `t`

```elixir
@type t() :: %Scrypath.Operator.Status{
  backend: backend_section(),
  index: String.t(),
  mode: :inline | :manual | :oban | atom(),
  queue: section(),
  schema: module()
}
```

# `fetch`

```elixir
@spec fetch(module(), keyword(), keyword()) :: {:ok, t()} | {:error, term()}
```

# `new`

```elixir
@spec new(keyword()) :: t()
```

---

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