home / skills / proffesor-for-testing / agentic-qe / qe-defect-intelligence

qe-defect-intelligence skill

/v3/assets/skills/qe-defect-intelligence

This skill empowers proactive quality management by predicting defects, detecting failure patterns, and guiding root-cause analysis across the SDLC.

npx playbooks add skill proffesor-for-testing/agentic-qe --skill qe-defect-intelligence

Review the files below or copy the command above to add this skill to your agents.

Files (1)
SKILL.md
4.4 KB
---
name: "QE Defect Intelligence"
description: "AI-powered defect prediction, pattern learning, and root cause analysis for proactive quality management."
---

# QE Defect Intelligence

## Purpose

Guide the use of v3's defect intelligence capabilities including ML-based defect prediction, pattern recognition from historical data, and automated root cause analysis.

## Activation

- When predicting defect-prone code
- When analyzing failure patterns
- When performing root cause analysis
- When learning from past defects
- When prioritizing testing based on risk

## Quick Start

```bash
# Predict defects in changed code
aqe defect predict --changes HEAD~5..HEAD

# Analyze failure patterns
aqe defect patterns --period 90d --min-occurrences 3

# Root cause analysis
aqe defect rca --failure "test/auth.test.ts:45"

# Learn from resolved defects
aqe defect learn --source jira --status resolved
```

## Agent Workflow

```typescript
// Defect prediction
Task("Predict defect-prone code", `
  Analyze PR #456 changes and predict defect likelihood:
  - Historical defect correlation
  - Code complexity factors
  - Author experience with module
  - Test coverage gaps
  Flag high-risk changes requiring extra review.
`, "qe-defect-predictor")

// Root cause analysis
Task("Analyze test failure", `
  Investigate recurring failure in AuthService tests:
  - Collect failure history (last 30 days)
  - Identify common patterns
  - Trace to potential root causes
  - Suggest fixes using 5-whys analysis
`, "qe-root-cause-analyzer")
```

## Prediction Models

### 1. Change-Based Prediction

```typescript
await defectPredictor.predictFromChanges({
  changes: prChanges,
  factors: {
    codeChurn: { weight: 0.2 },
    complexity: { weight: 0.25 },
    authorExperience: { weight: 0.15 },
    fileHistory: { weight: 0.2 },
    testCoverage: { weight: 0.2 }
  },
  threshold: {
    high: 0.7,
    medium: 0.4,
    low: 0.2
  }
});
```

### 2. Pattern Learning

```typescript
await patternLearner.learnPatterns({
  source: {
    defects: 'jira:project=MYAPP&type=bug',
    commits: 'git:last-6-months',
    tests: 'test-results:last-1000-runs'
  },
  patterns: [
    'code-smell-to-defect',
    'change-coupling',
    'test-gap-correlation',
    'complexity-defect-density'
  ],
  output: {
    rules: true,
    visualizations: true,
    recommendations: true
  }
});
```

### 3. Root Cause Analysis

```typescript
await rootCauseAnalyzer.analyze({
  failure: testFailure,
  methods: [
    'five-whys',
    'fishbone-diagram',
    'fault-tree',
    'change-impact'
  ],
  context: {
    recentChanges: true,
    environmentDiff: true,
    dependencyChanges: true,
    similarFailures: true
  }
});
```

## Defect Prediction Report

```typescript
interface DefectPrediction {
  file: string;
  riskScore: number;  // 0-1
  riskLevel: 'critical' | 'high' | 'medium' | 'low';
  factors: {
    name: string;
    contribution: number;
    details: string;
  }[];
  historicalDefects: {
    count: number;
    recent: Defect[];
    patterns: string[];
  };
  recommendations: {
    action: string;
    priority: string;
    expectedRiskReduction: number;
  }[];
}
```

## Pattern Categories

| Pattern | Detection | Prevention |
|---------|-----------|------------|
| Null pointer | Static analysis | Null checks, Optional |
| Race condition | Concurrency analysis | Locks, atomic ops |
| Memory leak | Heap analysis | Resource cleanup |
| Off-by-one | Boundary analysis | Loop invariants |
| Injection | Taint analysis | Input validation |

## Root Cause Templates

```yaml
root_cause_analysis:
  five_whys:
    max_depth: 5
    prompt_template: "Why did {effect} happen?"

  fishbone:
    categories:
      - people
      - process
      - tools
      - environment
      - materials
      - measurement

  fault_tree:
    top_event: "Test Failure"
    gate_types: [AND, OR, NOT]
    basic_events: true
```

## Integration with Issue Tracking

```typescript
await defectIntelligence.syncWithTracker({
  source: 'jira',
  project: 'MYAPP',
  sync: {
    defectData: 'bidirectional',
    predictions: 'create-tasks',
    patterns: 'update-labels'
  },
  automation: {
    flagHighRisk: true,
    suggestAssignee: true,
    linkRelated: true
  }
});
```

## Coordination

**Primary Agents**: qe-defect-predictor, qe-pattern-learner, qe-root-cause-analyzer
**Coordinator**: qe-defect-intelligence-coordinator
**Related Skills**: qe-coverage-analysis, qe-quality-assessment

Overview

This skill provides AI-powered defect prediction, pattern learning, and automated root cause analysis to make quality engineering proactive and data-driven. It combines change-based risk scoring, historical pattern recognition, and structured RCA techniques to prioritize testing and guide fixes. The skill integrates with issue trackers and can create actionable recommendations and tasks for high-risk findings.

How this skill works

The skill inspects code changes, test results, and historical defect data to produce risk scores and detect recurring failure patterns. It trains pattern learners on commits, test runs, and defect tickets, then applies models to new changes to flag defect-prone files. For failures, it runs structured RCA (five-whys, fishbone, fault-tree) using context like recent changes and environment diffs to suggest root causes and remediations.

When to use it

  • Before merging a pull request to identify defect-prone changes
  • When analyzing recurring test failures to find root causes
  • To prioritize test work by risk and expected risk reduction
  • During retroactive analysis to learn patterns from past defects
  • When automating triage and creating issues for high-risk findings

Best practices

  • Feed comprehensive historical data: commits, tests, and defect tickets for better pattern learning
  • Tune factor weights (code churn, complexity, coverage, author history) to align with project reality
  • Run predictions on PR diffs and on scheduled windows to catch regressions early
  • Integrate with your issue tracker to automate task creation and assignee suggestions
  • Combine automated RCA outputs with human review before applying high-impact fixes

Example use cases

  • Scan a set of PRs to flag files with high defect risk and require extra review or tests
  • Analyze the last 90 days of failures to surface patterns like change-coupling or test gaps
  • Run an RCA for a flaky authentication test and receive prioritized remediation steps
  • Sync predictions to Jira to auto-create tasks for critical-risk files and suggest owners
  • Learn recurring defect patterns to inform coding standards and targeted test suites

FAQ

What inputs improve prediction accuracy?

Use combined inputs: recent code changes, historical defect records, test coverage, file complexity, and author experience. More historical depth and clean defect labels improve models.

Can it create issues automatically?

Yes. Integration supports creating tasks for high-risk findings, suggesting assignees, and linking related defects when enabled.