---
name: workflow-delivery-loop
type: workflow
description: >-
  The delivery workflow — the standing path every build ticket flows through,
  from Backlog to Done, composing the Relay, Forge and Prism behaviours across
  the triage, build, review and merge stages with the operator as the gate.
  Read to see the whole delivery path at a glance, or to render the Layer 4
  Workflows layer on the agents site. The executable inner loop is driven by
  routine-delivery-loop; this is the path that loop runs.
---

# Delivery workflow

The worked example of a Layer 4 workflow: the standing process a build ticket flows through to reach Done. It composes behaviour from Layers 1–3 — Relay triages and merges, Forge builds, Prism reviews — with the operator as the gate. The workflow is the whole path; the loop (routine-delivery-loop) is the executable inner cycle that runs it on the Claude Code surface.

## The path

```mermaid
flowchart LR
  B[Backlog] --> T{Relay · triage}
  T -->|needs code| TD[Todo · F0-RGE]
  T -->|human-owned| HU[exec:human]
  TD --> F[Forge · build, open PR]
  F -->|blocker| BL[Blocked · operator]
  F --> IR[In Review · PR-1SM]
  IR --> QA{Prism · verdict}
  QA -->|changes needed| TD
  QA -->|clean + flagged| OP{Operator · gate}
  QA -->|clean + unflagged| MG[Relay · merge]
  OP -->|approve · R3-LAY| MG
  OP -->|bounce| TD
  MG --> DN[Done]
```

## Stages

Triage (Relay) → Build (Forge, never merges) → Review (Prism, never advances) → Merge (Relay, on the approval signal).

## Lanes

The executor axis carries the work: R3-LAY (triage / merge) → F0-RGE (build) → PR-1SM (review) → R3-LAY (merge gate). Status is the lock — Todo is ready, In Progress is running, In Review is awaiting review or approval.

## The gate

Unflagged, clean, unblocked work merges autonomously: the loop's clean-pass routing to R3-LAY is itself the approval signal (Option A, 2026-06-25). Flagged work, QA blocks, bounce-cap escalations and merge failures stop for the operator.

## Bounce path

A "changes needed" verdict bounces the ticket to Todo for Forge. The cap is two strikes — one auto-bounce, then escalate to the operator. The strike count is read from the Linear thread, not session state.

## Relationship to the routine

This workflow is the path; routine-delivery-loop is the executable driver that walks it, sequencing skill-exec, skill-qa and skill-merge. Routine sits at Layer 2, workflow at Layer 4 — the same loop seen from two layers.
