Premia
Core concepts

Status lifecycle

How a run moves from queued to a terminal state.

A run moves through these states:

StatusMeaning
queuedCreated and waiting for a worker (or for a concurrency slot).
runningAn agent is actively working on it.
done / completedThe step finished successfully.
mergedThe PR was merged (terminal, success).
failedThe step errored or a gate rejected with no path forward.
cancelledYou cancelled it.

Terminal states are merged, done/completed, failed, and cancelled.

Queued vs. paused

A run can sit in queued for two reasons:

  1. It's simply waiting for the next free worker.
  2. Your org is at its concurrency limit — the run is paced (re-queued), not failed, and starts automatically when a slot frees. You'll see a note on the run and, for Linear-triggered runs, a comment on the issue.

Following completion

premia run "…" --wait and premia runs logs <id> --follow both block until the run and all its children reach a terminal state, then exit with a code that reflects success or failure — handy in CI.

On this page