Skip to content

Definition of done

A SAGIO iteration is complete only when it leaves four durable outputs:

Output Meaning
Artifact The code, document, decision, experiment, or shipped behavior
Evidence Tests, logs, diffs, user observation, or a reproducible check
State update The issue, project, roadmap, docs, and ownership record agree
Next decision Continue, revise, stop, escalate, or accept

Engineering completion

  • Acceptance conditions are explicit and satisfied
  • Normal, boundary, failure, authorization, tenancy, retry, and recovery behavior were considered
  • Focused tests cover the changed contract
  • Relevant tests, typecheck, lint, and builds pass
  • API/OpenAPI, environment, operations, and product docs changed with behavior
  • The diff was reviewed adversarially against current dev
  • Known failures are recorded precisely; none are hidden by narration
  • GitHub issue, Project status, and roadmap reflect reality

Claim format

Prefer:

The integration passed these three cases, fails in this documented case, and is waiting on this external approval.

Avoid:

The integration works.

Stopping rule

“Could be better” is not a reason to continue. Continue only while the next loop is likely to reduce meaningful uncertainty or cross an explicit acceptance condition at reasonable cost.