Engineering Definition of Done
One page, embedded in every agent task brief and enforced (the automatable parts) by the merge gate. A change is done when all of these are true:
- Acceptance criteria demonstrably met — the ACs from the PFD pass, shown by tests, not assertion.
- Tests honest and covering — assertions test behaviour; coverage and mutation thresholds met on changed code (see Test pyramid & coverage).
- Docs updated in the same PR (Docs with build); stale-docs check green.
- Merge gate green — lint, SAST, secrets, SCA all pass; no unapproved new dependencies.
- Accessibility checks pass for any UI change (WCAG 2.2 AA — automated + the required manual charter).
- Agent context updated — if the change taught us anything (a gotcha, a convention, an architecture fact),
CLAUDE.mdormemory/records it (Repo context & memory). - Deployed to preview and verified — the change ran in an ephemeral environment, not just on a laptop.
- ADR present if the change is of a type that requires one (Decision records).
How it's used
- The DoD is pasted into every agent task brief so the agent builds to it rather than being audited against it afterwards.
- CI enforces every automatable line; the human reviewer confirms the rest at the merge gate.
- The DoD scales with the work (see scaled variants) — a bugfix still meets every line; each line just has less to check.