Skip to main content
ClaudeWave
Skill215 repo starsupdated 3mo ago

calculate-priority-score

Calculate priority score for bugs, issues, or tasks based on severity, impact, and likelihood. Use for bug prioritization, task ordering, or risk assessment.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/maslennikov-ig/claude-code-orchestrator-kit /tmp/calculate-priority-score && cp -r /tmp/calculate-priority-score/.claude/skills/calculate-priority-score ~/.claude/skills/calculate-priority-score
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# Calculate Priority Score

Calculate numeric priority score and category for issues based on multiple factors.

## When to Use

- Bug prioritization
- Security vulnerability risk assessment
- Task ordering
- Resource allocation decisions

## Instructions

### Step 1: Receive Issue Attributes

Accept issue attributes as input.

**Expected Input**:
```json
{
  "severity": "critical|high|medium|low",
  "impact": "breaking|major|minor|none",
  "likelihood": "certain|likely|possible|unlikely"
}
```

### Step 2: Load Scoring Matrix

Use scoring matrix to assign points.

**Severity Scores**:
- critical: 10
- high: 7
- medium: 5
- low: 2

**Impact Scores**:
- breaking: 10
- major: 7
- minor: 3
- none: 0

**Likelihood Scores**:
- certain: 10
- likely: 7
- possible: 5
- unlikely: 2

### Step 3: Calculate Total Score

Sum all factor scores.

**Formula**: `score = severity + impact + likelihood`

**Range**: 0-30

### Step 4: Determine Priority Category

Map score to priority category.

**Priority Categories**:
- **P0 (Critical)**: 25-30
  - Label: "Critical - Immediate Action Required"
  - Action: Drop everything, fix now

- **P1 (High)**: 19-24
  - Label: "High - Fix This Sprint"
  - Action: Prioritize in current sprint

- **P2 (Medium)**: 12-18
  - Label: "Medium - Schedule for Next Sprint"
  - Action: Include in backlog, address soon

- **P3 (Low)**: 5-11
  - Label: "Low - Schedule When Convenient"
  - Action: Nice to have, low priority

- **P4 (Minimal)**: 0-4
  - Label: "Minimal - Consider Closing"
  - Action: May not be worth fixing

### Step 5: Return Scored Result

Return complete priority assessment.

**Expected Output**:
```json
{
  "score": 27,
  "category": "P0",
  "label": "Critical - Immediate Action Required",
  "factors": {
    "severity": 10,
    "impact": 10,
    "likelihood": 7
  },
  "recommendation": "Drop everything, fix now"
}
```

## Error Handling

- **Invalid Severity**: Return error listing valid values
- **Invalid Impact**: Return error listing valid values
- **Invalid Likelihood**: Return error listing valid values
- **Missing Factor**: Return error requesting all factors

## Examples

### Example 1: Critical Bug

**Input**:
```json
{
  "severity": "critical",
  "impact": "breaking",
  "likelihood": "certain"
}
```

**Output**:
```json
{
  "score": 30,
  "category": "P0",
  "label": "Critical - Immediate Action Required",
  "factors": {
    "severity": 10,
    "impact": 10,
    "likelihood": 10
  },
  "recommendation": "Drop everything, fix now"
}
```

### Example 2: Medium Priority Issue

**Input**:
```json
{
  "severity": "medium",
  "impact": "minor",
  "likelihood": "likely"
}
```

**Output**:
```json
{
  "score": 15,
  "category": "P2",
  "label": "Medium - Schedule for Next Sprint",
  "factors": {
    "severity": 5,
    "impact": 3,
    "likelihood": 7
  },
  "recommendation": "Include in backlog, address soon"
}
```

### Example 3: Low Priority Enhancement

**Input**:
```json
{
  "severity": "low",
  "impact": "minor",
  "likelihood": "unlikely"
}
```

**Output**:
```json
{
  "score": 7,
  "category": "P3",
  "label": "Low - Schedule When Convenient",
  "factors": {
    "severity": 2,
    "impact": 3,
    "likelihood": 2
  },
  "recommendation": "Nice to have, low priority"
}
```

### Example 4: High-Impact but Unlikely

**Input**:
```json
{
  "severity": "high",
  "impact": "breaking",
  "likelihood": "unlikely"
}
```

**Output**:
```json
{
  "score": 19,
  "category": "P1",
  "label": "High - Fix This Sprint",
  "factors": {
    "severity": 7,
    "impact": 10,
    "likelihood": 2
  },
  "recommendation": "Prioritize in current sprint"
}
```

## Validation

- [ ] Calculates score correctly
- [ ] Maps to correct priority category
- [ ] Handles all valid factor values
- [ ] Returns clear recommendations
- [ ] Validates input factors

## Supporting Files

- `scoring-matrix.json`: Factor scoring rules (see Supporting Files section)