cuo is the workflow engine: it drives every unit of work - a task - through one governed lifecycle, with humans holding the two acceptance gates. There is exactly one implementation workflow; improvement and hardening work runs the same machinery as net-new features.

The single workflow

ship-tasks (v2.3.x) picks the first eligible task from docs/tasks/BACKLOG.md and drives it end to end:

draft -> ready_to_implement -> implementing -> ready_to_review -> reviewing
      -> ready_to_test -> testing -> done        (off-ramps: on_hold, closed)

Human-in-the-loop is required

Two transitions are human-acceptance gates the agent must never cross by itself:

  1. Review acceptance (reviewing -> ready_to_test): a human accepts the code-review packet.
  2. Final acceptance (testing -> done): a human accepts the shipped task after every machine gate is green.

Between the gates the agent runs continuously and self-resolves everything it can verify. The doctrine lives in modules/cuo/EXECUTION-DISCIPLINE.md; the status contract in modules/skill/contracts/task/STATUS-REFERENCE.md.

Gates

Machine gates derive from the touched module's audit-profile.yaml: build, lint, tests, coverage on touched files, the caf audit gate, and - where a module has a sealed goldenset (modules/<m>/.awh/) - an independent awh rerun against the baseline. Green machine gates are necessary, never sufficient: the two human verdicts still decide.

Where things live

Guides

Changelog

History (including the collapse of the old separate improvement track into this single workflow) lives in the changelog; this page describes only the current state.


Generated from modules/cuo/docs/index.md — edit the markdown source, not this file (TASK-DOCS-002).