Skip to main content

Pipeline and Gates

Who a gate pages, how questions are routed, and what Needs attention is telling you.

Text Guide

Pipeline and Gates

A gate is a phase that exists to page a person. There are three, and each one is a per-project setting: Plan review, QA and Release. Set a gate to automatic and the work never enters that phase at all. See Task Workflow for the phases themselves.

The Roles

Four roles, configured per project under Project Settings → Question routing:

| Role | What it covers | |---|---| | Product owner | The Plan review gate. Approves plans. | | Tech owner | The QA and Release gates. Also where a denied agent permission request escalates. | | Client contact | The person outside the team a question can be put to. Tick Relays answers for an external client when they answer on someone else's behalf. | | Triager | New incoming requests. Decides whether a request becomes work. |

Only organization owners and admins can change routing. Changing it does not re-route questions that are already open.

How a Question Finds a Person

FlightDesk pages the task's own people first — the QA assignee, the developer, the person who created it. The routed roles are the fallback for a task whose own people cannot answer, and they are the only answer for client contact and triager, which have no task-level equivalent.

A gate with no routed role and no active person on the task falls back to the task's human requester, then to the organization owner. A gate nobody holds raises a flag rather than silently stalling.

An agent asking a question supplies a proposed default along with it, so a question that goes unanswered is not automatically a blocked task. A permission decision is different: it is explicitly blocking and carries no default. Projects cap how many rounds of questions one task may go through (Question rounds per task, default 2).

Open questions are listed at /questions in the sidebar.

Needs Attention

The Command Center (/app/command-center) opens on a Needs attention view: every task that is asking something of a person, oldest ask first. It is a presentation of facts the API computes — a gate waiting on you, a blocking question, a task flag — not a second set of rules.

Two things are worth knowing:

  • Finished work asks nothing. A task in a Done phase never appears, whatever happened on the way. Its history is still on the task page.
  • Mine vs. Everyone. By default you see what is addressed to you. Owners and admins can switch the scope to everyone.

Task Flags

A flag is FlightDesk noticing that something needs a person. Flags are raised automatically, carry the reason as written, and are cleared by a person — or by the thing that caused them being resolved. A task shows its most severe open flag, so a harmless "quiet for four hours" cannot mask a hung turn.

Five severities, worst first:

| Severity | Meaning | Examples | |---|---|---| | Hold | Agent turns are held until a person clears it | a native approval resolved without a FlightDesk decision; a native prompt the Claude Bridge cannot classify | | Blocked by failure | Nothing moves until somebody fixes something | a turn failed; an automatic rebase failed; automatic fixes stopped; the dispatch limit was reached; no connected agent; a skipped check to confirm | | Hung | A turn or a wait that nothing will finish on its own | the turn went quiet; the turn never started; it finished without reporting; a session idle with no pull request; waiting with nothing armed | | Decision | A person has a decision to make | the session asked for something; Claude needs permission; nobody holds this gate; a blocking question has been open too long; the scope changed after work started | | Quiet | Nothing is wrong yet | no progress for a while; waiting on CI beyond its time limit; a new request |

Hold is the one that stops work. While a Hold flag is open, FlightDesk will not dispatch another turn on that task. This is how an unrecognised native Claude prompt is contained: rather than guessing at a permission card it cannot classify, FlightDesk holds the task and asks.

A scope flag is not a fault — it means the source's title or description changed after work started, and somebody should decide whether the work still matches the ask.