Core rule:

A task is not done because it is built — it is done because it is tested, working, and documented.

Contents

# Section
1 Self-Testing Before Handoff
2 Backend API — Definition of Done
3 Backend Test Cases Required
4 RLS Testing Matrix
5 Frontend Task — Definition of Done
6 Website — Definition of Done
7 Website Visual QA
8 Task Completion Comment
9 QA Handoff Checklist
10 Definition of Done Summary

1. Self-Testing — Before Handing Off

Every developer must test their own work. QA should not catch issues that the developer could have found with a basic check.

Universal Self-Test Checklist














2. Backend API — Definition of Done

An API is complete only when all of these are checked:
























3. Backend API — Test Cases Required

Every API must be tested for all these cases:

Test Case Required
Authenticated success Yes
Anonymous request Yes
Expired token Yes
Wrong role Yes
Wrong workspace Yes
Missing required field Yes
Invalid field type Yes
Duplicate record Yes
Related record missing Yes
Database constraint failure Yes
RLS denial Yes
External service failure If applicable
Retry/idempotency If applicable

4. RLS Testing Matrix

For every table, test all combinations:

User Type SELECT INSERT UPDATE DELETE
Anonymous No No No No
Owner Yes Yes Yes Yes
Admin Yes Yes Yes Depends
Manager Yes Yes Yes No
Member Yes Depends Depends No
Viewer Yes No No No
Non-member No No No No

5. Frontend Task — Definition of Done

A frontend task is complete only when:













6. Website — Definition of Done

A website build or replica is complete only when:
























7. Website Visual QA

Visual Comparison












Functional QA











SEO QA










Performance QA








8. Task Completion Comment Standard

Before marking any task done, add a final comment to the ticket.

Template

Status: Completed

Work Done:
- [What was built or fixed]
- [What was updated]

Testing Done:
- [What success flows were tested]
- [What error/edge cases were tested]
- [Mobile checked: Yes/No]

Notes:
- [Any known issues or follow-up items, or "None"]

Example

Status: Completed

Work Done:
- Built shared Add/Edit Project form.
- Added required field validation.
- Added loading, success, and error states.
- Matched design system spacing and button styles.

Testing Done:
- Tested create success flow.
- Tested edit success flow.
- Tested required field validation.
- Tested API failure handling.
- Checked mobile layout.

Notes:
- No known blockers.

9. QA Handoff Checklist (From Developer to QA)

Before handing off to QA, confirm:










10. Definition of Done — Summary

Role Done When
Backend Developer Schema + RLS + Validation + Error handling + Logs + Tests + Documentation all complete
Frontend Developer Main flow + Validation + Loading + Error UI + Mobile + Self-tested + Ticket updated
Website Builder All pages + Forms + SEO + Redirects + Analytics + Mobile + Client approved staging
Any Team Member Requirement met + Self-tested + Ticket updated with evidence + No silent failures