| id | definition-of-done-builder |
| name | definition-of-done-builder |
| type | Capability Uplift |
| version | 1.0.0 |
| created | 20/03/2026 |
| modified | 20/03/2026 |
| status | active |
| triggers | ["what does done mean","define done","what needs to be true","when is it finished","what are the success criteria","build a definition of done","what criteria","acceptance criteria"] |
| description | > |
| context | fork |
Definition of Done Builder
Purpose: Transform vague outcome language into measurable, verifiable DoD criteria.
Every criterion must be binary: either PROVEN or not. No "mostly done."
When to Use
Use this skill when:
- A user asks what "done" means for a feature or project
- An outcome translation has been produced and needs formal criteria
- A milestone requires explicit acceptance criteria before work begins
- A completion claim needs to be verified against agreed criteria
Do NOT use this skill for:
- Tasks that already have a written spec with explicit acceptance criteria
- Simple bug fixes with obvious verification (e.g., "fix the 500 error")
Inputs
- The outcome phrase or goal description
- (Optional) Current system state (what's already proven)
- (Optional) Scope constraints (e.g., "payments not in scope yet")
Procedure
Step 1: Categorise the goal
Map the goal to one or more of these production categories:
| Category | Scope |
|---|
| Frontend | Pages, components, auth flows, responsiveness, visual quality |
| Backend | API endpoints, health checks, auth middleware, error handling |
| Data / Security | Database, migrations, backups, CORS, rate limiting, JWT |
| Payments | Provider mode, webhooks, test transactions, refund flow |
| Integrations | Third-party APIs, email, webhooks |
| Deployment | CI/CD, SSL, DNS, rollback |
| Business | Support, legal, analytics, monitoring |
| Visual | Design system compliance, screenshot proof |
Step 2: Generate criteria per category
For each relevant category, write criteria as binary statements:
Format: □ [Verb] [measurable condition] — Proof: [exact artifact]
Examples (good):
□ Production URL responds with HTTP 200 — Proof: curl -I output
□ Test suite passes with 0 failures — Proof: pytest/vitest output
□ No rounded-lg classes in component — Proof: grep search output