# Workflow stage (stage)

Workflow stage: One position a task passes through on its way to done, such as plan, code, review, merge, or verify.

Source: https://codeherder.com/glossary/workflow-stage/

Glossary · The work

One position a task passes through on its way to done, such as plan, code, review, merge, or verify.

## What it is

A workflow stage is one step in a task's life, from being filed to being finished. A typical sequence is plan, then code, then review, then merge, then verify, then done, but the sequence itself is configurable per task type. Each stage either has an agent doing the work, or is a gate a human has to clear, and a task can only move to the next stage once its current one is actually finished.

## Why it matters to you

Stages are where quality control actually lives. If "review" is a real stage with its own agent or person, rather than a rubber stamp on the way to "merge," a wrong answer has a real chance of getting caught before it ships. Ask what a workflow's stages actually check. The stage count alone tells you nothing: five stages that all rubber-stamp are worth less than two that genuinely disagree with each other sometimes.

## How it works in CodeHerder

CodeHerder lets a workspace define its own sequence of stages per task type, and each stage can require specific fields, approvals, or checks before a task is allowed to advance. That configurability means a bug fix and a database migration don't have to move through the same gates: the riskier one can carry an extra approval the simple one skips. How work actually flows through those stages, including which ones spawn an agent and which are just a bridge to the next one, is explained in the how work flows doc, with the bigger picture on how it works.

- [How it works →](https://codeherder.com/how-it-works/)
- [How work flows →](https://codeherder.com/docs/how-work-flows/)

## What people get wrong

It's easy to assume every stage in a workflow runs an agent. Some stages, like "todo" or "done," are just bookkeeping: nothing runs there, they're places a task sits before or after the real work happens. It's also easy to assume a longer pipeline is automatically safer. A stage only adds real safety if it's actually configured to check something; an empty stage just adds a pause.

Keep going

## Related terms

[Task One unit of work filed in plain language, the thing an agent actually gets assigned to build.](https://codeherder.com/glossary/task/) [Human in the loop A point in a task's workflow where the decision belongs to a person, and only a person, before the work moves forward.](https://codeherder.com/glossary/human-in-the-loop/) [Separation of duties Requiring that the person who reviews or merges a task isn't the same person, or agent, who wrote it.](https://codeherder.com/glossary/separation-of-duties/) [Agent orchestration Running more than one coding agent against a shared, tracked backlog, instead of leaving it to whoever opened a terminal.](https://codeherder.com/glossary/agent-orchestration/)

[← See every term](https://codeherder.com/glossary)
