> ## Documentation Index
> Fetch the complete documentation index at: https://docs.get-hive.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Workflow runs, retries and errors

> Follow a Hive workflow run step by step, understand run and step statuses, cancel a run, and control retries and failures with On error.

Every workflow run, test or production, is recorded with each step's input, output and outcome.
This page covers how to follow runs, what their statuses mean, and how retries and failures work.

## Follow a run

Select **Past runs** in the dock under the canvas. Filter by **Test** or **Production** (or hide reruns), by date
or by status, then select a run to open its detail:

* the trigger input and the run's final output;
* one row per step, in order, with its status, detail, input and output — inside a loop, one row
  per item, and inside a parallel step, one row per agent;
* what the run's model and connected-app calls cost, in GBP.

When a run from **Fill in form** or a schedule is waiting, Hive tells you where, for example "…is
waiting at Draft the reply — follow it in Past runs".

## Run statuses

| Status | Meaning |
| - | - |
| `queued` | Accepted, not started yet. |
| `running` | Steps are executing. |
| `waiting` | Paused at a **Wait** step. |
| `completed` | Every step finished. |
| `failed` | A step failed and nothing continued past it, or the run was refused. |
| `cancelled` | Someone cancelled it. |

## Step statuses

| Status | Meaning |
| - | - |
| `queued`, `running`, `waiting` | Not finished yet. |
| `succeeded` | The step finished. An action's detail says **Action executed**, **Awaiting approval** or why it was shadowed. |
| `failed` | The step failed after its attempts. |
| `skipped` | Not on the path the run took, or deactivated. |
| `cancelled` | The run was cancelled before it finished. |

A failed step also names the kind of failure: the model provider, a permission refusal, an internal
error, no runner available, or a connected app that is unavailable.

<Note>
  An action waiting for approval does not hold the run. The step succeeds with **Awaiting approval**,
  the approval appears in your approval queue, and the run moves on to the next step.
</Note>

### Why an action was not sent

| Detail | Reason |
| - | - |
| **Shadowed: test run, not dispatched** | It was a test run. |
| **Shadowed: kill switch engaged, not dispatched** | The workspace kill switch was on. |
| **Shadowed: recipient not on record, not dispatched** | The recipient is not a known contact. |
| **Shadowed by policy (no external effect)** | Your autonomy policy keeps this action in shadow mode. |

## Cancel a run

Select **Cancel run** on a run that is still going. You can give a reason (up to 500 characters).
Actions already taken are not undone; check the [audit log](/approvals/audit-log) to reverse the
reversible ones.

## On error: retries and continuing

Each step except the trigger has an **On error** choice:

| Choice | Behaviour |
| - | - |
| **Default (up to 3 attempts, then stop)** | Retrying steps try up to 3 times, then stop the run. |
| **Stop workflow** | Stop at the first failure. |
| **Retry once, then stop** | Up to 2 attempts. |
| **Continue with empty output** | Carry on; the step produces no value. |

Only these steps retry: **Hive agent**, **Parallel agents** (each agent on its own), **Action**,
**Web search**, **Generate image** and AI **Condition**. Between attempts Hive waits 0.5 s, then
1 s, 2 s and so on, never more than 30 s. A step can allow up to 10 attempts when its policy is set
in an [exported workflow](/developers/workflow-export-format).

**Continue with empty output** has rules:

* A later step cannot read a step that may continue; Hive refuses to deploy if it does.
* Conditions and outputs cannot continue — a failed condition decides nothing.
* A **refusal** always stops the run, whatever the policy: an action above the role, a run that is
  not funded, a step your workspace cannot run, or an app that needs connecting first.

## The 500-step run budget

A run records at most 500 step executions. Hive counts the worst case when you deploy and refuses a
workflow that could exceed it:

* a retrying step counts once per possible attempt (3 by default);
* a Parallel agents step counts 1, plus each agent's attempts;
* a loop counts 1, plus **Max iterations** times everything inside it, plus 2 more for each wait inside it on every iteration.

For example, a loop of 50 items around one agent step (3 attempts) costs 1 + 50 × 3 = 151. Lower
**Max iterations**, or the retries inside the loop, to fit. When the
[workflow assistant](/workflows/workflow-assistant) drafts a workflow, it lowers a loop's limit to
fit on its own and tells you.

## Timeouts

A **Wait** until a value appears fails after its timeout (24 hours by default, up to 30 days).
Hive has no separate overall run timeout.

## When runs do not start

An unattended run (a schedule or a public form) is refused when:

* the workflow is paused or not deployed;
* the owner no longer has the **Operator** role or a seat;
* the kill switch is on;
* the workspace has used its monthly run allowance — see [Billing and plans](/admin/billing-and-plans).

The workflow's notification recipients get a bell card saying the workflow didn't run. See
[Failure notifications](/workflows/test-and-deploy#failure-notifications).

## Related

<CardGroup cols={2}>
  <Card title="Test and deploy" icon="rocket" href="/workflows/test-and-deploy">
    Test runs, releases and notifications.
  </Card>

  <Card title="Triggers and steps" icon="list" href="/workflows/workflow-steps">
    Every step and its settings.
  </Card>

  <Card title="Limits reference" icon="gauge" href="/developers/limits-reference">
    Every workflow limit in one place.
  </Card>

  <Card title="Audit log" icon="receipt" href="/approvals/audit-log">
    Receipts and undo for actions taken.
  </Card>
</CardGroup>
