Definition of Done (DoD)
Work is only considered Done when the following criteria are met. "Code written" is not Done. "Value delivered" is Done.
Requirements & Acceptance
- Acceptance criteria understood and fulfilled
- Any assumptions validated with the project lead
- Business logic reflects the actual client workflow
Code & Implementation
- Code committed, pushed, and reviewed
- No unused variables, commented-out blocks, or debug statements
- Naming reflects intent; logic is readable without explanation
- Tests added or updated where relevant (unit, feature, or integration)
- No hard-coded configuration, secrets, or environment specifics
Behaviour & Interaction
- Feature behaves as expected across happy path and common edge cases
- Forms validate input client-side and server-side
- Errors provide clear feedback and recovery paths
- UI interactions match existing patterns and do not surprise users
Documentation
- Any new business logic, config, or setup steps documented
- Complex decisions explained in commit or PR notes
- If this changes how the team builds similar features, docs updated
QA & Peer Review
- Work passes internal lead review (unless delegated)
- QA checklist completed and passed
- No regressions introduced
Deployment Readiness
- No console errors or hidden warnings
- Feature deployable without additional setup surprises
- Feature flags toggled correctly if used
Done Means:
The feature works, is understandable, safe to deploy, and adds value without introducing new risks.