Skip to content

Fully supervised

Every kind of human step in one run: requirements up front, a diff review, a decision on the review notes, and a final approval before the pull request.

Template fully-supervised
Works on A git repository, cloned into an isolated Docker sandbox
Where a person acts Provide implementation context — a person fills in a form, waiting up to 15m
Review the implementation diff — a person reviews and annotates, waiting up to 8h
Apply the review notes? — a person chooses a path, waiting up to 30m
Final approval — open the PR? — a person approves or rejects, waiting up to 24h

Drawn from the template spec at build time. Bookkeeping nodes that only record status are left out; amber nodes are where a person acts.

flowchart TD
  n_gatherContext>"Provide implementation context<br/><small>person: input</small>"]
  n_implement["Implement"]
  n_reviewDiff>"Review the implementation diff<br/><small>person: review</small>"]
  n_applyNotesDecision>"Apply the review notes?<br/><small>person: decision</small>"]
  n_finalApproval>"Final approval — open the PR?<br/><small>person: approval</small>"]
  n_addressNotes["Address notes"]
  n_openPR["Open PR"]
  n_terminateRejected(["Failed<br/><small>rejected</small>"])
  n_checkApprovalLimit{"Check approval limit?"}
  n_terminateTimedOut(["Timed out"])
  n_done(["Done"])
  n_addressApprovalChanges["Address approval changes"]
  n_gatherContext -->|"submitted"| n_implement
  n_gatherContext -->|"timed out"| n_implement
  n_implement --> n_reviewDiff
  n_reviewDiff -->|"submitted"| n_applyNotesDecision
  n_reviewDiff -->|"timed out"| n_finalApproval
  n_applyNotesDecision -->|"timed out"| n_finalApproval
  n_applyNotesDecision -->|"Yes — apply notes and re-review"| n_addressNotes
  n_applyNotesDecision -->|"No — looks good"| n_finalApproval
  n_finalApproval -->|"approved"| n_openPR
  n_finalApproval -->|"rejected"| n_terminateRejected
  n_finalApproval --> n_checkApprovalLimit
  n_finalApproval -->|"timed out"| n_terminateTimedOut
  n_addressNotes --> n_finalApproval
  n_openPR --> n_done
  n_checkApprovalLimit -->|"yes"| n_terminateRejected
  n_checkApprovalLimit -->|"no"| n_addressApprovalChanges
  n_addressApprovalChanges --> n_finalApproval
  class n_gatherContext,n_reviewDiff,n_applyNotesDecision,n_finalApproval gate

Ships as a built-in template and reuses the engineering steps the flagship flow runs. This particular arrangement of them is not separately exercised end to end against a real repository. See product overview §8.

Every built-in template is seeded into the workflow library and can be cloned, edited on the visual canvas, and versioned — see architecture for the node types. The spec lives in packages/shared/src/workflow/templates/fullySupervised.ts.

© 2026 Jorge Barnaby

Source-available under FSL-1.1-MIT

Source on GitHub

Built with Astro and Starlight