# Definition of done

One standard for every story, not a per-story checklist. Work that does not meet it is not
released and is not shown at review: it goes back to the backlog.

Start from these seven and change them to fit your product. Keep it short — a definition of done
that runs to thirty items is one nobody reads.

- [ ] The change has an automated test that fails without it, and the suite passes in CI.
- [ ] Code has been reviewed by someone who did not write it.
- [ ] No new linter, type, or accessibility violations.
- [ ] New or changed behaviour that users see is documented where users will look.
- [ ] Feature flags default to off, and the change is deployable without a manual step.
- [ ] No known defect of severity Major or above is left open against the work.
- [ ] Observability: the new path emits whatever the team needs to tell whether it is working in production.

## Where each line is enforced

Fill this in. A line with nothing in the right-hand column is a line that will be skipped under a
deadline, and nobody will know.

| Line | Enforced by |
| --- | --- |
| The change has an automated test that fails without it, and the suite passes in CI |  |
| Code has been reviewed by someone who did not write it |  |
| No new linter, type, or accessibility violations |  |
| New or changed behaviour that users see is documented where users will look |  |
| Feature flags default to off, and the change is deployable without a manual step |  |
| No known defect of severity Major or above is left open against the work |  |
| Observability: the new path emits whatever the team needs to tell whether it is working in production |  |

## What does not belong here

- Anything specific to one story. That is an acceptance criterion.
- Anything nobody checks. It teaches the team the whole list is optional.
- Anything outside the team's control. A sign-off is a release gate, not a definition of done.
- Anything that cannot pass or fail, such as "code is clean".
