# Definition of Done

Use this checklist for every Increment. Add stricter project-specific lines when needed; do not remove a line silently.

> **What this teaches:** I can distinguish “the code runs for me” from a releasable Increment whose behavior, quality, safety, and delivery evidence are reviewable.

Before work begins, read every line and predict which one is most at risk. At the end, point to evidence for each check; a checked box without evidence is not done.

## Behavior

These checks connect implementation to the user-visible contract, including failures and boundaries.

- [ ] The linked user story or defect has measurable acceptance criteria.
- [ ] Every acceptance criterion is satisfied or explicitly rejected with a reason.
- [ ] Error and boundary behavior are defined, not left accidental.

## Quality

These checks ask whether the change can be maintained and whether automated feedback protects existing behavior.

- [ ] You wrote meaningful automated tests and ran the standard project commands.
- [ ] Existing tests remain green.
- [ ] The code is readable, focused, and free of known dead or duplicated behavior.
- [ ] You recorded any known limitation or deferred work.

## Security and privacy

These checks make safety part of completion instead of a separate activity postponed until release.

- [ ] No secret, credential, personal path, private record, or real user data is present.
- [ ] Test and demonstration data is synthetic or explicitly approved and sanitized.
- [ ] Input validation, authorization, and dependency risks relevant to the change were considered.

## Delivery

These checks create traceability from need to reviewed commit to deployable result and recovery path.

- [ ] The Issue, branch, commits, pull request, tests, and CI evidence are linked.
- [ ] Required CI checks pass on the exact reviewed commit.
- [ ] Documentation and run instructions match the delivered behavior.
- [ ] You can explain what changed, why it works, one tradeoff, and one likely failure case.
- [ ] The Increment is releasable; if released, its version and rollback path are recorded.

## Explain it back

Choose one line from each section. Explain what evidence proves it, what that evidence does not prove, and which line would stop release if it failed.
