# `PromptRunner.RuntimeStore`
[🔗](https://github.com/nshkrdotcom/prompt_runner_sdk/blob/v0.6.1/lib/prompt_runner/runtime_store.ex#L1)

Behaviour for progress tracking and log destination selection.

# `last_completed`

```elixir
@callback last_completed(term()) :: String.t() | nil
```

# `log_paths`

```elixir
@callback log_paths(term(), String.t(), String.t()) :: %{
  log_file: String.t() | nil,
  events_file: String.t() | nil
}
```

# `mark_completed`

```elixir
@callback mark_completed(term(), String.t(), term()) :: :ok
```

# `mark_failed`

```elixir
@callback mark_failed(term(), String.t()) :: :ok
```

# `setup`

```elixir
@callback setup(map()) :: {:ok, term()} | {:error, term()}
```

# `statuses`

```elixir
@callback statuses(term()) :: map()
```

---

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