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

# Build statuses

> What each status means while a build moves through the pipeline.

A build moves through a small set of statuses. The dashboard's status badge shows the current one; webhooks and the API expose the same values.

| Status       | Meaning                                                                                                          |
| ------------ | ---------------------------------------------------------------------------------------------------------------- |
| `pending`    | Build is queued, waiting to start.                                                                               |
| `running`    | Build is actively executing — source synced, compile / cook / stage in progress.                                 |
| `complete`   | Build succeeded. Artifact is available to download or auto-deploy.                                               |
| `failed`     | Build failed. Check the logs in the dashboard for the cause.                                                     |
| `superseded` | A newer build for the same `(project, branch, platform, buildType)` was queued, so this older one was cancelled. |

Once a build hits a terminal state (`complete`, `failed`, `superseded`), it stays there. Re-trigger to start a fresh build.

## Phases inside `running`

While a build is running, the dashboard shows which phase is current:

* **source sync** — pulling code from GitHub or Perforce
* **compile** — UnrealBuildTool compiles your C++ modules (skipped for Blueprint-only projects)
* **cook** — the cook commandlet processes content for the target platform
* **stage** — final packaging into the deliverable form
* **upload** — artifact is uploaded

Each phase logs `RunUAT`-style markers you can grep for in the streamed log:

* `*** COMPILING ... ***` — compile started
* `LogCook: Cooking maps from path...` — cook started
* `LogStaging: Staging...` — stage started
* `BUILD SUCCESSFUL` / `BUILD FAILED` — exit signal

## Why a build might be `superseded`

If you push three commits to `main` in quick succession, you'd otherwise get three sequential builds — each made obsolete by the next. BuildPixel automatically marks earlier in-flight builds for the same `(project, branch, platform, buildType)` as `superseded` when a newer one is queued. Only the latest build runs to completion.
