Initial commit
This commit is contained in:
321
skills/dor-validator/SKILL.md
Normal file
321
skills/dor-validator/SKILL.md
Normal file
@@ -0,0 +1,321 @@
|
||||
---
|
||||
name: dor-validator
|
||||
description: Validates user stories against Definition of Ready checklist to ensure they are ready for development
|
||||
allowed-tools: mcp__atlassian__*
|
||||
mcpServers:
|
||||
- atlassian
|
||||
---
|
||||
|
||||
# Definition of Ready Validator Skill
|
||||
|
||||
This skill validates user stories against a comprehensive Definition of Ready (DoR) checklist to ensure stories are fully prepared for AI-assisted development.
|
||||
|
||||
## When This Skill is Invoked
|
||||
|
||||
Claude will automatically use this skill when you mention:
|
||||
- "validate story readiness"
|
||||
- "check definition of ready"
|
||||
- "is this story ready"
|
||||
- "DoR validation"
|
||||
- "story ready for development"
|
||||
|
||||
## Capabilities
|
||||
|
||||
### 1. DoR Checklist Validation
|
||||
Evaluate stories against standard DoR criteria:
|
||||
|
||||
| Category | Criteria | Weight |
|
||||
|----------|----------|--------|
|
||||
| Clarity | Story is understandable by any team member | 15% |
|
||||
| Value | Business value is clearly stated | 15% |
|
||||
| Acceptance Criteria | AC are testable and complete | 20% |
|
||||
| Scope | Story is appropriately sized (1-3 days) | 15% |
|
||||
| Dependencies | Dependencies are identified and resolved | 10% |
|
||||
| Technical Feasibility | Implementation approach is clear | 15% |
|
||||
| AI-Readiness | Story is suitable for AI-assisted development | 10% |
|
||||
|
||||
### 2. Validation Scoring
|
||||
Generate a readiness score with actionable feedback.
|
||||
|
||||
## How to Use This Skill
|
||||
|
||||
### Step 1: Fetch Story (if not provided)
|
||||
|
||||
**Use Atlassian MCP to get story details:**
|
||||
```
|
||||
mcp__atlassian__jira_get_issue(
|
||||
issueKey="PROJ-123",
|
||||
fields=["summary", "description", "acceptanceCriteria", "storyPoints", "labels", "components", "status", "priority"]
|
||||
)
|
||||
```
|
||||
|
||||
### Step 2: Validate Each DoR Criterion
|
||||
|
||||
#### Criterion 1: Clarity (15%)
|
||||
**Check:**
|
||||
- [ ] Story has a clear, descriptive title
|
||||
- [ ] Description explains WHAT is needed
|
||||
- [ ] User persona is specific (not generic "user")
|
||||
- [ ] No jargon or ambiguous terms
|
||||
- [ ] Any acronyms are defined
|
||||
|
||||
**Scoring:**
|
||||
- 5/5: Perfectly clear, any team member can understand
|
||||
- 4/5: Minor clarifications might help
|
||||
- 3/5: Some ambiguity exists
|
||||
- 2/5: Significant ambiguity
|
||||
- 1/5: Unclear or confusing
|
||||
- 0/5: Missing or incomprehensible
|
||||
|
||||
#### Criterion 2: Value (15%)
|
||||
**Check:**
|
||||
- [ ] "So that" clause explains WHY
|
||||
- [ ] Business impact is articulated
|
||||
- [ ] User benefit is measurable
|
||||
- [ ] Priority is justified
|
||||
|
||||
**Scoring:**
|
||||
- 5/5: Clear, measurable business value
|
||||
- 4/5: Value stated but not quantified
|
||||
- 3/5: Value implied but not explicit
|
||||
- 2/5: Value unclear
|
||||
- 1/5: No value statement
|
||||
- 0/5: Appears to have no value
|
||||
|
||||
#### Criterion 3: Acceptance Criteria (20%)
|
||||
**Check:**
|
||||
- [ ] AC are present
|
||||
- [ ] AC use Given/When/Then format (or equivalent)
|
||||
- [ ] Each AC is independently testable
|
||||
- [ ] Happy path covered
|
||||
- [ ] Edge cases covered
|
||||
- [ ] Error scenarios covered
|
||||
- [ ] Non-functional requirements specified (if applicable)
|
||||
|
||||
**Scoring:**
|
||||
- 5/5: Comprehensive, testable AC covering all scenarios
|
||||
- 4/5: Good AC, minor gaps in edge cases
|
||||
- 3/5: Basic AC, missing error scenarios
|
||||
- 2/5: Minimal AC, only happy path
|
||||
- 1/5: Vague or incomplete AC
|
||||
- 0/5: No acceptance criteria
|
||||
|
||||
#### Criterion 4: Scope (15%)
|
||||
**Check:**
|
||||
- [ ] Story can be completed in 1-3 days
|
||||
- [ ] Story does ONE thing (single responsibility)
|
||||
- [ ] Scope boundaries are clear (out of scope noted)
|
||||
- [ ] No hidden complexity
|
||||
- [ ] Story points assigned (if team uses them)
|
||||
|
||||
**Scoring:**
|
||||
- 5/5: Well-scoped, 1-3 day effort, clear boundaries
|
||||
- 4/5: Appropriate scope, minor uncertainty
|
||||
- 3/5: Slightly large but acceptable
|
||||
- 2/5: Too large, should be split
|
||||
- 1/5: Much too large or too vague to estimate
|
||||
- 0/5: Scope undefined
|
||||
|
||||
#### Criterion 5: Dependencies (10%)
|
||||
**Check:**
|
||||
- [ ] External dependencies identified
|
||||
- [ ] Internal dependencies identified
|
||||
- [ ] Blocking dependencies resolved
|
||||
- [ ] Required data/APIs available
|
||||
- [ ] Team members available (if specific skills needed)
|
||||
|
||||
**Scoring:**
|
||||
- 5/5: No dependencies OR all dependencies resolved
|
||||
- 4/5: Dependencies identified, resolution planned
|
||||
- 3/5: Dependencies identified, some unresolved
|
||||
- 2/5: Dependencies partially identified
|
||||
- 1/5: Dependencies unknown
|
||||
- 0/5: Critical blocking dependencies
|
||||
|
||||
#### Criterion 6: Technical Feasibility (15%)
|
||||
**Check:**
|
||||
- [ ] Technical approach is outlined
|
||||
- [ ] Required technologies are available
|
||||
- [ ] Patterns to follow are identified
|
||||
- [ ] Security considerations noted
|
||||
- [ ] Performance requirements specified
|
||||
- [ ] No technical unknowns requiring spikes
|
||||
|
||||
**Scoring:**
|
||||
- 5/5: Clear technical path, all considerations addressed
|
||||
- 4/5: Approach clear, minor unknowns acceptable
|
||||
- 3/5: Approach outlined, some technical questions
|
||||
- 2/5: Technical approach unclear
|
||||
- 1/5: Significant technical unknowns
|
||||
- 0/5: Technical feasibility not assessed
|
||||
|
||||
#### Criterion 7: AI-Readiness (10%)
|
||||
**Check:**
|
||||
- [ ] Requirements are unambiguous for AI interpretation
|
||||
- [ ] Test cases can be derived from AC
|
||||
- [ ] Code patterns to follow are documented
|
||||
- [ ] No external human interaction required during development
|
||||
- [ ] Verification criteria are objective
|
||||
|
||||
**Scoring:**
|
||||
- 5/5: Excellent for AI-assisted development
|
||||
- 4/5: Good, AI can handle with minor guidance
|
||||
- 3/5: Acceptable, some human clarification may be needed
|
||||
- 2/5: Challenging for AI, significant guidance needed
|
||||
- 1/5: Not suitable for AI development
|
||||
- 0/5: Requires human-only development
|
||||
|
||||
### Step 3: Calculate Overall Score
|
||||
|
||||
**Weighted Score Calculation:**
|
||||
```python
|
||||
total_score = (
|
||||
(clarity_score / 5 * 0.15) +
|
||||
(value_score / 5 * 0.15) +
|
||||
(ac_score / 5 * 0.20) +
|
||||
(scope_score / 5 * 0.15) +
|
||||
(dependencies_score / 5 * 0.10) +
|
||||
(technical_score / 5 * 0.15) +
|
||||
(ai_readiness_score / 5 * 0.10)
|
||||
) * 100
|
||||
|
||||
# Classification
|
||||
if total_score >= 80:
|
||||
status = "READY"
|
||||
elif total_score >= 60:
|
||||
status = "NEEDS_MINOR_WORK"
|
||||
elif total_score >= 40:
|
||||
status = "NEEDS_SIGNIFICANT_WORK"
|
||||
else:
|
||||
status = "NOT_READY"
|
||||
```
|
||||
|
||||
### Step 4: Generate Recommendations
|
||||
|
||||
For each criterion scoring below 4:
|
||||
- Identify specific gaps
|
||||
- Provide actionable recommendations
|
||||
- Suggest specific text/content to add
|
||||
|
||||
## Output Format
|
||||
|
||||
Always structure skill output as:
|
||||
|
||||
```markdown
|
||||
# DoR Validation Report: [STORY-KEY]
|
||||
|
||||
## Summary
|
||||
- **Overall Score:** XX/100
|
||||
- **Status:** [READY / NEEDS_MINOR_WORK / NEEDS_SIGNIFICANT_WORK / NOT_READY]
|
||||
- **Recommendation:** [Proceed / Revise and re-validate]
|
||||
|
||||
## Criterion Scores
|
||||
|
||||
| Criterion | Score | Status | Weight |
|
||||
|-----------|-------|--------|--------|
|
||||
| Clarity | X/5 | [pass/fail emoji] | 15% |
|
||||
| Value | X/5 | [pass/fail emoji] | 15% |
|
||||
| Acceptance Criteria | X/5 | [pass/fail emoji] | 20% |
|
||||
| Scope | X/5 | [pass/fail emoji] | 15% |
|
||||
| Dependencies | X/5 | [pass/fail emoji] | 10% |
|
||||
| Technical Feasibility | X/5 | [pass/fail emoji] | 15% |
|
||||
| AI-Readiness | X/5 | [pass/fail emoji] | 10% |
|
||||
|
||||
## Detailed Analysis
|
||||
|
||||
### Clarity
|
||||
**Score: X/5**
|
||||
- [Specific findings]
|
||||
- [What's good]
|
||||
- [What needs improvement]
|
||||
|
||||
### Value
|
||||
**Score: X/5**
|
||||
- [Specific findings]
|
||||
|
||||
[... continue for each criterion ...]
|
||||
|
||||
## Required Actions (for status != READY)
|
||||
|
||||
### Critical (Must Fix)
|
||||
1. [Action 1 with specific guidance]
|
||||
2. [Action 2 with specific guidance]
|
||||
|
||||
### Recommended (Should Fix)
|
||||
1. [Action 1]
|
||||
2. [Action 2]
|
||||
|
||||
### Optional (Nice to Have)
|
||||
1. [Action 1]
|
||||
|
||||
## Suggested Improvements
|
||||
|
||||
### For Acceptance Criteria
|
||||
```
|
||||
[Specific AC text to add]
|
||||
```
|
||||
|
||||
### For Description
|
||||
```
|
||||
[Specific text to add]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
**Validation Timestamp:** [datetime]
|
||||
**Validator:** DoR Validator Skill v1.0
|
||||
```
|
||||
|
||||
## Special Cases
|
||||
|
||||
### Story Already in Progress
|
||||
```markdown
|
||||
**Warning:** Story [STORY-KEY] is already in progress.
|
||||
|
||||
**Current Status:** In Development
|
||||
|
||||
**Recommendation:** DoR validation is typically done before development.
|
||||
Proceeding with validation for documentation purposes.
|
||||
|
||||
[Continue with validation]
|
||||
```
|
||||
|
||||
### Story is a Spike
|
||||
```markdown
|
||||
**Note:** Story [STORY-KEY] appears to be a spike/research task.
|
||||
|
||||
**Adjusted Criteria:**
|
||||
- Acceptance Criteria: Research questions instead of Given/When/Then
|
||||
- Scope: Time-boxed research period
|
||||
- Technical Feasibility: N/A for discovery
|
||||
|
||||
[Adjusted validation]
|
||||
```
|
||||
|
||||
### Story Lacks Critical Information
|
||||
```markdown
|
||||
**Error:** Story [STORY-KEY] is missing critical information.
|
||||
|
||||
**Missing:**
|
||||
- [ ] Description is empty
|
||||
- [ ] No acceptance criteria
|
||||
|
||||
**Status:** NOT_READY - Cannot validate
|
||||
|
||||
**Required Actions:**
|
||||
1. Add story description
|
||||
2. Add acceptance criteria
|
||||
3. Re-run validation
|
||||
```
|
||||
|
||||
## Integration with Other Skills
|
||||
|
||||
This skill works with:
|
||||
- **story-creator**: Validates newly created stories
|
||||
- **acceptance-criteria-generator**: Generates AC if missing
|
||||
- **story-refiner**: Improves stories that fail validation
|
||||
- **backlog-grooming agent**: Uses for backlog health assessment
|
||||
|
||||
---
|
||||
|
||||
When invoked, this skill will comprehensively evaluate the story against DoR criteria and provide actionable feedback to ensure the story is ready for AI-assisted development.
|
||||
Reference in New Issue
Block a user