[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6C2X2WR7PDAC1SHEC5BCW9H":3,"skill-same:01M6C2X2WR7PDAC1SHEC5BCW9H":67},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":35,"linkOnly":36,"markdownContent":37,"markdownBody":38,"frontMatter":39,"refName":43,"commitSha":44,"skillDirectory":45,"forksCount":46,"repositoryHtmlUrl":47,"repositoryHomepageUrl":48,"ownerHtmlUrl":49,"ownerBlogUrl":50,"ownerDescription":51,"updatedAt":52,"install":53,"resources":66},"01M6C2X2WR7PDAC1SHEC5BCW9H","regression-metrics",null,"Track and analyze regression statistics, trends, hotspots, and health indicators across test suites","jmagly\u002Faiwg","jmagly","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1159087?v=4","01M6C10AK8N2WCSQN11FYGTJWN","Joseph Magly","01M6C10AQ8A2RMED1Y1BSVY7NF",229,"MIT","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fplugins\u002Fcodex-sdlc\u002Fskills\u002Fregression-metrics\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34],"metrics","regression","regression metrics","test","indicators","health","analyze","across","statistics","trends","track","2026-11-10 10:12:30",false,"---\nnamespace: aiwg\nname: regression-metrics\nplatforms: [all]\ndescription: Track and analyze regression statistics, trends, hotspots, and health indicators across test suites\n\n---\n\n# regression-metrics\n\nTrack and analyze regression statistics, trends, and health indicators.\n\n## Triggers\n\n\nAlternate expressions and non-obvious activations (primary phrases are matched automatically from the skill description):\n\n- \"regression KPIs\" → regression metric dashboard\n- \"flakiness score\" → test stability metrics\n\n## Purpose\n\nThis skill provides regression analytics by:\n- Tracking regression occurrence rates\n- Measuring time-to-detection and time-to-fix\n- Analyzing regression patterns and hotspots\n- Identifying high-risk areas\n- Trending regression metrics over time\n- Generating regression health dashboards\n\n## Behavior\n\nWhen triggered, this skill:\n\n1. **Collects regression data**:\n   - Parse regression test results\n   - Load historical regression records\n   - Gather bisect findings\n   - Import baseline comparisons\n   - Aggregate issue tracker data\n\n2. **Calculates key metrics**:\n   - Regression rate (per sprint\u002Frelease)\n   - Mean time to detect (MTTD)\n   - Mean time to fix (MTTF)\n   - Regression recurrence rate\n   - Escape rate (production regressions)\n\n3. **Identifies patterns**:\n   - Common root causes\n   - High-regression components\n   - Time-of-day\u002Fsprint patterns\n   - Correlation with code changes\n\n4. **Analyzes trends**:\n   - Regression rate over time\n   - Detection speed improvements\n   - Fix time trends\n   - Quality trajectory\n\n5. **Generates visualizations**:\n   - Regression heatmaps\n   - Trend charts\n   - Burn-down tracking\n   - Risk matrices\n\n6. **Produces actionable insights**:\n   - Prioritize high-risk areas\n   - Recommend test improvements\n   - Suggest process changes\n   - Set quality goals\n\n## Key Metrics\n\n### Regression Rate\n\n```yaml\nregression_rate:\n  description: Number of regressions per time period\n  formula: regressions_detected \u002F time_period\n  units: regressions per sprint\u002Fweek\u002Frelease\n\n  targets:\n    excellent: \"\u003C 2 per sprint\"\n    good: \"2-5 per sprint\"\n    acceptable: \"5-10 per sprint\"\n    poor: \"> 10 per sprint\"\n\n  calculation:\n    count: new regressions introduced\n    period: sprint, release, or month\n    exclude: known issues, flaky tests\n```\n\n### Mean Time to Detect (MTTD)\n\n```yaml\nmttd:\n  description: Average time from regression introduction to detection\n  formula: sum(detection_time) \u002F regression_count\n  units: hours or days\n\n  targets:\n    excellent: \"\u003C 4 hours\"\n    good: \"\u003C 24 hours\"\n    acceptable: \"\u003C 7 days\"\n    poor: \"> 7 days\"\n\n  calculation:\n    detection_time: commit_time_to_failure_report\n    includes: automated and manual detection\n```\n\n### Mean Time to Fix (MTTF)\n\n```yaml\nmttf:\n  description: Average time from detection to fix deployment\n  formula: sum(fix_time) \u002F regression_count\n  units: hours or days\n\n  targets:\n    critical: \"\u003C 4 hours\"\n    high: \"\u003C 24 hours\"\n    medium: \"\u003C 7 days\"\n    low: \"\u003C 30 days\"\n\n  calculation:\n    fix_time: detection_to_fix_deployed\n    severity_weighted: true\n```\n\n### Escape Rate\n\n```yaml\nescape_rate:\n  description: Percentage of regressions reaching production\n  formula: (production_regressions \u002F total_regressions) * 100\n  units: percentage\n\n  targets:\n    excellent: \"\u003C 5%\"\n    good: \"5-10%\"\n    acceptable: \"10-20%\"\n    poor: \"> 20%\"\n\n  calculation:\n    production_regressions: found by users\u002Fmonitoring\n    total_regressions: all detected including pre-release\n```\n\n### Recurrence Rate\n\n```yaml\nrecurrence_rate:\n  description: Percentage of regressions that recur after fix\n  formula: (recurring_regressions \u002F total_fixed) * 100\n  units: percentage\n\n  targets:\n    excellent: \"\u003C 5%\"\n    good: \"5-10%\"\n    acceptable: \"10-15%\"\n    poor: \"> 15%\"\n\n  indicates:\n    - insufficient test coverage\n    - lack of regression tests\n    - poor fix quality\n```\n\n## Metrics Dashboard\n\n```markdown\n# Regression Metrics Dashboard\n\n**Period**: Last 30 Days (2025-12-29 to 2026-01-28)\n**Project**: User Service\n\n## Executive Summary\n\n| Metric | Current | Target | Status | Trend |\n|--------|---------|--------|--------|-------|\n| Regression Rate | 4.2\u002Fsprint | \u003C 5 | ✅ Good | ↓ Improving |\n| MTTD | 8.5 hours | \u003C 24h | ✅ Good | ↓ Improving |\n| MTTF | 18.7 hours | \u003C 24h | ⚠️ Close | → Stable |\n| Escape Rate | 12% | \u003C 10% | ⚠️ Above Target | ↑ Worsening |\n| Recurrence Rate | 7% | \u003C 10% | ✅ Good | → Stable |\n\n**Overall Health**: ⚠️ Good with Concerns\n**Priority Focus**: Reduce production escapes\n\n## Regression Trend (Last 6 Sprints)\n\n```\nSprint 8:  ██████████ 10 regressions\nSprint 9:  ████████   8 regressions\nSprint 10: ██████     6 regressions\nSprint 11: █████      5 regressions\nSprint 12: ████       4 regressions\nSprint 13: ████       4 regressions\n           ↓ -60% improvement since Sprint 8\n```\n\n**Analysis**: Significant improvement trend. Stabilizing around 4-5 per sprint.\n\n## Detection Speed Trend\n\n```\nWeek 1: 24h ████████████████████████\nWeek 2: 18h ██████████████████\nWeek 3: 12h ████████████\nWeek 4:  9h █████████\nWeek 5:  8h ████████\n        ↓ -67% improvement in 5 weeks\n```\n\n**Analysis**: Automation improvements paying off. Most regressions now caught within hours.\n\n## Component Heatmap\n\nRegressions by component (last 30 days):\n\n| Component | Regressions | Change | Risk Level |\n|-----------|-------------|--------|------------|\n| src\u002Fauth\u002F | ??? 3 | +1 | High |\n| src\u002Fapi\u002F | ?? 2 | 0 | Medium |\n| src\u002Fdb\u002F | ?? 2 | -1 | Medium |\n| src\u002Fuser\u002F | ? 1 | -2 | Low |\n| src\u002Futils\u002F | ? 0 | 0 | Low |\n\n**Hotspot Alert**: `src\u002Fauth\u002F` showing increased regression rate\n\n## Root Cause Analysis\n\n| Root Cause | Count | % | Trend |\n|------------|-------|---|-------|\n| Missing test coverage | 5 | 42% | → |\n| Integration not tested | 3 | 25% | ↑ |\n| Edge case not considered | 2 | 17% | ↓ |\n| Flaky test masking issue | 1 | 8% | → |\n| Breaking dependency change | 1 | 8% | → |\n\n**Insight**: 67% of regressions preventable with better coverage\u002Fintegration testing\n\n## Severity Distribution\n\n| Severity | Count | MTTF | Status |\n|----------|-------|------|--------|\n| Critical | 1 | 3.2h | ✅ Fast response |\n| High | 4 | 12.5h | ✅ Within target |\n| Medium | 6 | 28.4h | ⚠️ Above target |\n| Low | 1 | 72h | ✅ Acceptable |\n\n## Time-to-Detection Analysis\n\n```\nDetection Method:\n  Automated Tests: 75% (avg 4.2h detection)\n  Manual Testing:  17% (avg 32h detection)\n  Production:       8% (avg 96h detection)\n```\n\n**Insight**: Automation catching most issues early. Need to reduce production escapes.\n\n## Time-to-Fix Analysis\n\n```\nFix Duration by Severity:\n  Critical: ▓▓▓ 3.2h (target: 4h) ✅\n  High:     ▓▓▓▓▓▓ 12.5h (target: 24h) ✅\n  Medium:   ▓▓▓▓▓▓▓▓▓▓▓▓▓▓ 28.4h (target: 24h) ⚠️\n  Low:      ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ 72h ✅\n```\n\n**Issue**: Medium-severity regressions taking slightly longer than target\n\n## Regression Recurrence\n\n| Original Issue | Recurred | Reason |\n|----------------|----------|--------|\n| AUTH-101 | ✅ Yes | Missing regression test |\n| API-205 | ❌ No | Regression test added |\n| DB-089 | ❌ No | Regression test added |\n| USER-145 | ❌ No | Regression test added |\n\n**Recurrence Rate**: 25% (1 of 4) - One regression lacked test\n\n## Production Escapes\n\nRegressions that reached production:\n\n| Issue | Severity | Detection | Impact | MTTD |\n|-------|----------|-----------|--------|------|\n| AUTH-203 | High | User report | 500 users | 12h |\n\n**Analysis**: 1 escape this period. Auth module regression bypassed staging tests.\n\n## Recommendations\n\n### High Priority\n\n1. **Add integration tests for auth flows**\n   - Reason: 3 regressions in auth, 1 production escape\n   - Impact: Reduce auth regressions by ~60%\n   - Effort: 2 days\n\n2. **Improve staging test coverage**\n   - Reason: Production escape indicates gap\n   - Impact: Reduce escape rate to \u003C5%\n   - Effort: 1 week\n\n3. **Reduce medium-severity MTTF**\n   - Reason: 28.4h vs 24h target\n   - Impact: Faster user impact resolution\n   - Effort: Process improvement\n\n### Medium Priority\n\n4. **Add regression tests for all fixes**\n   - Reason: 25% recurrence rate on fixes without tests\n   - Impact: Zero recurrence for tested fixes\n   - Effort: Ongoing discipline\n\n5. **Monitor auth module closely**\n   - Reason: Highest regression count\n   - Impact: Early detection of issues\n   - Effort: Weekly review\n\n## Historical Comparison\n\n| Period | Reg Rate | MTTD | MTTF | Escape % |\n|--------|----------|------|------|----------|\n| 3 months ago | 8.2 | 36h | 48h | 18% |\n| 2 months ago | 6.5 | 24h | 36h | 15% |\n| 1 month ago | 5.1 | 12h | 24h | 13% |\n| Current | 4.2 | 8.5h | 18.7h | 12% |\n\n**Trend**: All metrics improving. Regression rate down 49%, detection 76% faster.\n\n## Goals for Next Period\n\n| Metric | Current | Goal | Strategy |\n|--------|---------|------|----------|\n| Regression Rate | 4.2 | \u003C 4 | Improve auth testing |\n| MTTD | 8.5h | \u003C 8h | Add more automation |\n| MTTF | 18.7h | \u003C 18h | Faster review process |\n| Escape Rate | 12% | \u003C 10% | Better staging tests |\n\n## Data Sources\n\n- Regression tests: `.aiwg\u002Ftesting\u002Fregression-results\u002F`\n- Bisect reports: `.aiwg\u002Ftesting\u002Fregression-bisect-*\u002F`\n- Baseline comparisons: `.aiwg\u002Ftesting\u002Fbaseline-comparisons\u002F`\n- Issue tracker: GitHub Issues (label: regression)\n- CI\u002FCD logs: GitHub Actions\n```\n\n## Usage Examples\n\n### View Current Metrics\n\n```\nUser: \"Show regression metrics\"\n\nSkill executes:\n1. Aggregate data from last 30 days\n2. Calculate key metrics\n3. Generate dashboard\n4. Identify trends\n\nOutput:\n\"Regression Metrics (Last 30 Days)\n\nOverall Health: ⚠️ Good with Concerns\n\nKey Metrics:\n- Regression Rate: 4.2\u002Fsprint ✅ (target \u003C 5)\n- MTTD: 8.5 hours ✅ (target \u003C 24h)\n- MTTF: 18.7 hours ⚠️ (target \u003C 24h)\n- Escape Rate: 12% ⚠️ (target \u003C 10%)\n\nHotspots:\n? src\u002Fauth\u002F - 3 regressions this period\n? src\u002Fapi\u002F - 2 regressions\n\nTop Recommendation: Add integration tests for auth\n\nFull dashboard: .aiwg\u002Ftesting\u002Fregression-metrics-dashboard.md\"\n```\n\n### Regression Trends\n\n```\nUser: \"Regression trends over time\"\n\nSkill analyzes:\n- Last 6 sprints of data\n- Calculate trend direction\n- Identify patterns\n\nOutput:\n\"Regression Trends (Last 6 Sprints)\n\nSprint 8:  10 regressions\nSprint 9:   8 regressions (-20%)\nSprint 10:  6 regressions (-25%)\nSprint 11:  5 regressions (-17%)\nSprint 12:  4 regressions (-20%)\nSprint 13:  4 regressions (stable)\n\nOverall: ↓ -60% improvement\nStatus: Stabilizing around 4-5\u002Fsprint\n\nMTTD: 36h → 8.5h (-76%)\nMTTF: 48h → 18.7h (-61%)\n\nConclusion: Strong improvement trend. Approaching best-in-class levels.\"\n```\n\n### Component Heatmap\n\n```\nUser: \"Which components have most regressions?\"\n\nSkill generates:\n\"Component Regression Heatmap (Last 30 Days)\n\nHigh Risk:\n? src\u002Fauth\u002F - 3 regressions (+1 from last period)\n   Most common: Missing integration tests\n\nMedium Risk:\n? src\u002Fapi\u002F - 2 regressions (no change)\n? src\u002Fdb\u002F - 2 regressions (-1 from last period)\n\nLow Risk:\n? src\u002Fuser\u002F - 1 regression (-2 from last period)\n? src\u002Futils\u002F - 0 regressions\n\nRecommendation: Focus testing efforts on auth module\"\n```\n\n## Integration\n\nThis skill uses:\n- `regression-bisect`: Import bisect findings\n- `regression-baseline`: Analyze baseline drift patterns\n- `test-coverage`: Correlate coverage with regression rates\n- `project-awareness`: Detect sprint\u002Frelease boundaries\n\n## Agent Orchestration\n\n```yaml\nagents:\n  analysis:\n    agent: metrics-analyst\n    focus: Statistical analysis and trends\n\n  visualization:\n    agent: technical-writer\n    focus: Dashboard and report generation\n\n  recommendations:\n    agent: test-architect\n    focus: Process improvement suggestions\n```\n\n## Configuration\n\n### Metric Collection\n\n```yaml\ncollection_config:\n  data_sources:\n    - regression_test_results\n    - bisect_reports\n    - baseline_comparisons\n    - issue_tracker\n    - ci_cd_logs\n\n  update_frequency: daily\n  retention: 90 days\n  aggregation: sprint, week, month\n```\n\n### Thresholds\n\n```yaml\nthresholds:\n  regression_rate:\n    excellent: 2\n    good: 5\n    acceptable: 10\n\n  mttd_hours:\n    excellent: 4\n    good: 24\n    acceptable: 168  # 7 days\n\n  mttf_hours:\n    critical: 4\n    high: 24\n    medium: 168  # 7 days\n\n  escape_rate_percent:\n    excellent: 5\n    good: 10\n    acceptable: 20\n```\n\n### Alert Rules\n\n```yaml\nalerts:\n  regression_spike:\n    condition: regression_rate > 10\n    severity: high\n    notification: team-channel\n\n  escape_rate_high:\n    condition: escape_rate > 20%\n    severity: critical\n    notification: leadership\n\n  mttd_degrading:\n    condition: mttd_trend_increase > 50%\n    severity: medium\n    notification: test-team\n```\n\n## Output Locations\n\n- Dashboards: `.aiwg\u002Ftesting\u002Fregression-metrics-dashboard.md`\n- Trends: `.aiwg\u002Ftesting\u002Fregression-trends.json`\n- Heatmaps: `.aiwg\u002Ftesting\u002Fregression-heatmap.json`\n- Historical data: `.aiwg\u002Ftesting\u002Fmetrics-history\u002F`\n\n## References\n\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Fframeworks\u002Fsdlc-complete\u002Fschemas\u002Fmetrics\u002Fregression-metrics-schema.yaml\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Fframeworks\u002Fsdlc-complete\u002Fagents\u002Fmetrics-analyst.md\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Fframeworks\u002Fsdlc-complete\u002Fcommands\u002Fmetrics-dashboard.md\n","# regression-metrics\n\nTrack and analyze regression statistics, trends, and health indicators.\n\n## Triggers\n\n\nAlternate expressions and non-obvious activations (primary phrases are matched automatically from the skill description):\n\n- \"regression KPIs\" → regression metric dashboard\n- \"flakiness score\" → test stability metrics\n\n## Purpose\n\nThis skill provides regression analytics by:\n- Tracking regression occurrence rates\n- Measuring time-to-detection and time-to-fix\n- Analyzing regression patterns and hotspots\n- Identifying high-risk areas\n- Trending regression metrics over time\n- Generating regression health dashboards\n\n## Behavior\n\nWhen triggered, this skill:\n\n1. **Collects regression data**:\n   - Parse regression test results\n   - Load historical regression records\n   - Gather bisect findings\n   - Import baseline comparisons\n   - Aggregate issue tracker data\n\n2. **Calculates key metrics**:\n   - Regression rate (per sprint\u002Frelease)\n   - Mean time to detect (MTTD)\n   - Mean time to fix (MTTF)\n   - Regression recurrence rate\n   - Escape rate (production regressions)\n\n3. **Identifies patterns**:\n   - Common root causes\n   - High-regression components\n   - Time-of-day\u002Fsprint patterns\n   - Correlation with code changes\n\n4. **Analyzes trends**:\n   - Regression rate over time\n   - Detection speed improvements\n   - Fix time trends\n   - Quality trajectory\n\n5. **Generates visualizations**:\n   - Regression heatmaps\n   - Trend charts\n   - Burn-down tracking\n   - Risk matrices\n\n6. **Produces actionable insights**:\n   - Prioritize high-risk areas\n   - Recommend test improvements\n   - Suggest process changes\n   - Set quality goals\n\n## Key Metrics\n\n### Regression Rate\n\n```yaml\nregression_rate:\n  description: Number of regressions per time period\n  formula: regressions_detected \u002F time_period\n  units: regressions per sprint\u002Fweek\u002Frelease\n\n  targets:\n    excellent: \"\u003C 2 per sprint\"\n    good: \"2-5 per sprint\"\n    acceptable: \"5-10 per sprint\"\n    poor: \"> 10 per sprint\"\n\n  calculation:\n    count: new regressions introduced\n    period: sprint, release, or month\n    exclude: known issues, flaky tests\n```\n\n### Mean Time to Detect (MTTD)\n\n```yaml\nmttd:\n  description: Average time from regression introduction to detection\n  formula: sum(detection_time) \u002F regression_count\n  units: hours or days\n\n  targets:\n    excellent: \"\u003C 4 hours\"\n    good: \"\u003C 24 hours\"\n    acceptable: \"\u003C 7 days\"\n    poor: \"> 7 days\"\n\n  calculation:\n    detection_time: commit_time_to_failure_report\n    includes: automated and manual detection\n```\n\n### Mean Time to Fix (MTTF)\n\n```yaml\nmttf:\n  description: Average time from detection to fix deployment\n  formula: sum(fix_time) \u002F regression_count\n  units: hours or days\n\n  targets:\n    critical: \"\u003C 4 hours\"\n    high: \"\u003C 24 hours\"\n    medium: \"\u003C 7 days\"\n    low: \"\u003C 30 days\"\n\n  calculation:\n    fix_time: detection_to_fix_deployed\n    severity_weighted: true\n```\n\n### Escape Rate\n\n```yaml\nescape_rate:\n  description: Percentage of regressions reaching production\n  formula: (production_regressions \u002F total_regressions) * 100\n  units: percentage\n\n  targets:\n    excellent: \"\u003C 5%\"\n    good: \"5-10%\"\n    acceptable: \"10-20%\"\n    poor: \"> 20%\"\n\n  calculation:\n    production_regressions: found by users\u002Fmonitoring\n    total_regressions: all detected including pre-release\n```\n\n### Recurrence Rate\n\n```yaml\nrecurrence_rate:\n  description: Percentage of regressions that recur after fix\n  formula: (recurring_regressions \u002F total_fixed) * 100\n  units: percentage\n\n  targets:\n    excellent: \"\u003C 5%\"\n    good: \"5-10%\"\n    acceptable: \"10-15%\"\n    poor: \"> 15%\"\n\n  indicates:\n    - insufficient test coverage\n    - lack of regression tests\n    - poor fix quality\n```\n\n## Metrics Dashboard\n\n```markdown\n# Regression Metrics Dashboard\n\n**Period**: Last 30 Days (2025-12-29 to 2026-01-28)\n**Project**: User Service\n\n## Executive Summary\n\n| Metric | Current | Target | Status | Trend |\n|--------|---------|--------|--------|-------|\n| Regression Rate | 4.2\u002Fsprint | \u003C 5 | ✅ Good | ↓ Improving |\n| MTTD | 8.5 hours | \u003C 24h | ✅ Good | ↓ Improving |\n| MTTF | 18.7 hours | \u003C 24h | ⚠️ Close | → Stable |\n| Escape Rate | 12% | \u003C 10% | ⚠️ Above Target | ↑ Worsening |\n| Recurrence Rate | 7% | \u003C 10% | ✅ Good | → Stable |\n\n**Overall Health**: ⚠️ Good with Concerns\n**Priority Focus**: Reduce production escapes\n\n## Regression Trend (Last 6 Sprints)\n\n```\nSprint 8:  ██████████ 10 regressions\nSprint 9:  ████████   8 regressions\nSprint 10: ██████     6 regressions\nSprint 11: █████      5 regressions\nSprint 12: ████       4 regressions\nSprint 13: ████       4 regressions\n           ↓ -60% improvement since Sprint 8\n```\n\n**Analysis**: Significant improvement trend. Stabilizing around 4-5 per sprint.\n\n## Detection Speed Trend\n\n```\nWeek 1: 24h ████████████████████████\nWeek 2: 18h ██████████████████\nWeek 3: 12h ████████████\nWeek 4:  9h █████████\nWeek 5:  8h ████████\n        ↓ -67% improvement in 5 weeks\n```\n\n**Analysis**: Automation improvements paying off. Most regressions now caught within hours.\n\n## Component Heatmap\n\nRegressions by component (last 30 days):\n\n| Component | Regressions | Change | Risk Level |\n|-----------|-------------|--------|------------|\n| src\u002Fauth\u002F | ??? 3 | +1 | High |\n| src\u002Fapi\u002F | ?? 2 | 0 | Medium |\n| src\u002Fdb\u002F | ?? 2 | -1 | Medium |\n| src\u002Fuser\u002F | ? 1 | -2 | Low |\n| src\u002Futils\u002F | ? 0 | 0 | Low |\n\n**Hotspot Alert**: `src\u002Fauth\u002F` showing increased regression rate\n\n## Root Cause Analysis\n\n| Root Cause | Count | % | Trend |\n|------------|-------|---|-------|\n| Missing test coverage | 5 | 42% | → |\n| Integration not tested | 3 | 25% | ↑ |\n| Edge case not considered | 2 | 17% | ↓ |\n| Flaky test masking issue | 1 | 8% | → |\n| Breaking dependency change | 1 | 8% | → |\n\n**Insight**: 67% of regressions preventable with better coverage\u002Fintegration testing\n\n## Severity Distribution\n\n| Severity | Count | MTTF | Status |\n|----------|-------|------|--------|\n| Critical | 1 | 3.2h | ✅ Fast response |\n| High | 4 | 12.5h | ✅ Within target |\n| Medium | 6 | 28.4h | ⚠️ Above target |\n| Low | 1 | 72h | ✅ Acceptable |\n\n## Time-to-Detection Analysis\n\n```\nDetection Method:\n  Automated Tests: 75% (avg 4.2h detection)\n  Manual Testing:  17% (avg 32h detection)\n  Production:       8% (avg 96h detection)\n```\n\n**Insight**: Automation catching most issues early. Need to reduce production escapes.\n\n## Time-to-Fix Analysis\n\n```\nFix Duration by Severity:\n  Critical: ▓▓▓ 3.2h (target: 4h) ✅\n  High:     ▓▓▓▓▓▓ 12.5h (target: 24h) ✅\n  Medium:   ▓▓▓▓▓▓▓▓▓▓▓▓▓▓ 28.4h (target: 24h) ⚠️\n  Low:      ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ 72h ✅\n```\n\n**Issue**: Medium-severity regressions taking slightly longer than target\n\n## Regression Recurrence\n\n| Original Issue | Recurred | Reason |\n|----------------|----------|--------|\n| AUTH-101 | ✅ Yes | Missing regression test |\n| API-205 | ❌ No | Regression test added |\n| DB-089 | ❌ No | Regression test added |\n| USER-145 | ❌ No | Regression test added |\n\n**Recurrence Rate**: 25% (1 of 4) - One regression lacked test\n\n## Production Escapes\n\nRegressions that reached production:\n\n| Issue | Severity | Detection | Impact | MTTD |\n|-------|----------|-----------|--------|------|\n| AUTH-203 | High | User report | 500 users | 12h |\n\n**Analysis**: 1 escape this period. Auth module regression bypassed staging tests.\n\n## Recommendations\n\n### High Priority\n\n1. **Add integration tests for auth flows**\n   - Reason: 3 regressions in auth, 1 production escape\n   - Impact: Reduce auth regressions by ~60%\n   - Effort: 2 days\n\n2. **Improve staging test coverage**\n   - Reason: Production escape indicates gap\n   - Impact: Reduce escape rate to \u003C5%\n   - Effort: 1 week\n\n3. **Reduce medium-severity MTTF**\n   - Reason: 28.4h vs 24h target\n   - Impact: Faster user impact resolution\n   - Effort: Process improvement\n\n### Medium Priority\n\n4. **Add regression tests for all fixes**\n   - Reason: 25% recurrence rate on fixes without tests\n   - Impact: Zero recurrence for tested fixes\n   - Effort: Ongoing discipline\n\n5. **Monitor auth module closely**\n   - Reason: Highest regression count\n   - Impact: Early detection of issues\n   - Effort: Weekly review\n\n## Historical Comparison\n\n| Period | Reg Rate | MTTD | MTTF | Escape % |\n|--------|----------|------|------|----------|\n| 3 months ago | 8.2 | 36h | 48h | 18% |\n| 2 months ago | 6.5 | 24h | 36h | 15% |\n| 1 month ago | 5.1 | 12h | 24h | 13% |\n| Current | 4.2 | 8.5h | 18.7h | 12% |\n\n**Trend**: All metrics improving. Regression rate down 49%, detection 76% faster.\n\n## Goals for Next Period\n\n| Metric | Current | Goal | Strategy |\n|--------|---------|------|----------|\n| Regression Rate | 4.2 | \u003C 4 | Improve auth testing |\n| MTTD | 8.5h | \u003C 8h | Add more automation |\n| MTTF | 18.7h | \u003C 18h | Faster review process |\n| Escape Rate | 12% | \u003C 10% | Better staging tests |\n\n## Data Sources\n\n- Regression tests: `.aiwg\u002Ftesting\u002Fregression-results\u002F`\n- Bisect reports: `.aiwg\u002Ftesting\u002Fregression-bisect-*\u002F`\n- Baseline comparisons: `.aiwg\u002Ftesting\u002Fbaseline-comparisons\u002F`\n- Issue tracker: GitHub Issues (label: regression)\n- CI\u002FCD logs: GitHub Actions\n```\n\n## Usage Examples\n\n### View Current Metrics\n\n```\nUser: \"Show regression metrics\"\n\nSkill executes:\n1. Aggregate data from last 30 days\n2. Calculate key metrics\n3. Generate dashboard\n4. Identify trends\n\nOutput:\n\"Regression Metrics (Last 30 Days)\n\nOverall Health: ⚠️ Good with Concerns\n\nKey Metrics:\n- Regression Rate: 4.2\u002Fsprint ✅ (target \u003C 5)\n- MTTD: 8.5 hours ✅ (target \u003C 24h)\n- MTTF: 18.7 hours ⚠️ (target \u003C 24h)\n- Escape Rate: 12% ⚠️ (target \u003C 10%)\n\nHotspots:\n? src\u002Fauth\u002F - 3 regressions this period\n? src\u002Fapi\u002F - 2 regressions\n\nTop Recommendation: Add integration tests for auth\n\nFull dashboard: .aiwg\u002Ftesting\u002Fregression-metrics-dashboard.md\"\n```\n\n### Regression Trends\n\n```\nUser: \"Regression trends over time\"\n\nSkill analyzes:\n- Last 6 sprints of data\n- Calculate trend direction\n- Identify patterns\n\nOutput:\n\"Regression Trends (Last 6 Sprints)\n\nSprint 8:  10 regressions\nSprint 9:   8 regressions (-20%)\nSprint 10:  6 regressions (-25%)\nSprint 11:  5 regressions (-17%)\nSprint 12:  4 regressions (-20%)\nSprint 13:  4 regressions (stable)\n\nOverall: ↓ -60% improvement\nStatus: Stabilizing around 4-5\u002Fsprint\n\nMTTD: 36h → 8.5h (-76%)\nMTTF: 48h → 18.7h (-61%)\n\nConclusion: Strong improvement trend. Approaching best-in-class levels.\"\n```\n\n### Component Heatmap\n\n```\nUser: \"Which components have most regressions?\"\n\nSkill generates:\n\"Component Regression Heatmap (Last 30 Days)\n\nHigh Risk:\n? src\u002Fauth\u002F - 3 regressions (+1 from last period)\n   Most common: Missing integration tests\n\nMedium Risk:\n? src\u002Fapi\u002F - 2 regressions (no change)\n? src\u002Fdb\u002F - 2 regressions (-1 from last period)\n\nLow Risk:\n? src\u002Fuser\u002F - 1 regression (-2 from last period)\n? src\u002Futils\u002F - 0 regressions\n\nRecommendation: Focus testing efforts on auth module\"\n```\n\n## Integration\n\nThis skill uses:\n- `regression-bisect`: Import bisect findings\n- `regression-baseline`: Analyze baseline drift patterns\n- `test-coverage`: Correlate coverage with regression rates\n- `project-awareness`: Detect sprint\u002Frelease boundaries\n\n## Agent Orchestration\n\n```yaml\nagents:\n  analysis:\n    agent: metrics-analyst\n    focus: Statistical analysis and trends\n\n  visualization:\n    agent: technical-writer\n    focus: Dashboard and report generation\n\n  recommendations:\n    agent: test-architect\n    focus: Process improvement suggestions\n```\n\n## Configuration\n\n### Metric Collection\n\n```yaml\ncollection_config:\n  data_sources:\n    - regression_test_results\n    - bisect_reports\n    - baseline_comparisons\n    - issue_tracker\n    - ci_cd_logs\n\n  update_frequency: daily\n  retention: 90 days\n  aggregation: sprint, week, month\n```\n\n### Thresholds\n\n```yaml\nthresholds:\n  regression_rate:\n    excellent: 2\n    good: 5\n    acceptable: 10\n\n  mttd_hours:\n    excellent: 4\n    good: 24\n    acceptable: 168  # 7 days\n\n  mttf_hours:\n    critical: 4\n    high: 24\n    medium: 168  # 7 days\n\n  escape_rate_percent:\n    excellent: 5\n    good: 10\n    acceptable: 20\n```\n\n### Alert Rules\n\n```yaml\nalerts:\n  regression_spike:\n    condition: regression_rate > 10\n    severity: high\n    notification: team-channel\n\n  escape_rate_high:\n    condition: escape_rate > 20%\n    severity: critical\n    notification: leadership\n\n  mttd_degrading:\n    condition: mttd_trend_increase > 50%\n    severity: medium\n    notification: test-team\n```\n\n## Output Locations\n\n- Dashboards: `.aiwg\u002Ftesting\u002Fregression-metrics-dashboard.md`\n- Trends: `.aiwg\u002Ftesting\u002Fregression-trends.json`\n- Heatmaps: `.aiwg\u002Ftesting\u002Fregression-heatmap.json`\n- Historical data: `.aiwg\u002Ftesting\u002Fmetrics-history\u002F`\n\n## References\n\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Fframeworks\u002Fsdlc-complete\u002Fschemas\u002Fmetrics\u002Fregression-metrics-schema.yaml\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Fframeworks\u002Fsdlc-complete\u002Fagents\u002Fmetrics-analyst.md\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Fframeworks\u002Fsdlc-complete\u002Fcommands\u002Fmetrics-dashboard.md\n",{"name":5,"namespace":40,"platforms":41,"description":7},"aiwg",[42],"all","main","6754967c344ccb087a8de06972f55a41067b291b","agentic\u002Fcode\u002Fplugins\u002Fcodex-sdlc\u002Fskills\u002Fregression-metrics",36,"https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg","https:\u002F\u002Faiwg.io","https:\u002F\u002Fgithub.com\u002Fjmagly","https:\u002F\u002Fintegrolabs.io","ml\u002Fai, industrial automation, safety\u002Fsecurity, ssi\r\n\r\nmagly.net\r\nintegrolabs.io\r\naiwg.io\r\nfortemi.com\r\npagenary.com\r\nbytecask.com","2026-11-12 00:33:10",{"source":8,"skillName":5,"commands":54,"prompt":64,"zipAvailable":65},[55,58,61],{"tool":56,"command":57},"npx","npx skills add jmagly\u002Faiwg --skill regression-metrics",{"tool":59,"command":60},"bunx","bunx skills add jmagly\u002Faiwg --skill regression-metrics",{"tool":62,"command":63},"pnpm","pnpm dlx skills add jmagly\u002Faiwg --skill regression-metrics","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fplugins\u002Fcodex-sdlc\u002Fskills\u002Fregression-metrics\u002FSKILL.md",true,[],[68,96,120,126,133,147],{"skillNo":69,"name":70,"nameZh":6,"description":71,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":72,"categories":73,"keywords":75,"publishedAt":35},"01M70QA0BSYJ49EES9V4RE8QH1","host-hardening","Read-only system hardening baseline and plan-first host hardening recommendations for SSH, Docker bind addresses, firewall persistence, datastores, exporters and audit retention.","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fplugins\u002Fsecurity-engineering\u002Fskills\u002Fhost-hardening\u002FSKILL.md",[74],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],"host","host hardening","hardening","read","re","recommendations","remediation","plan","port","verification","Bash","access","only","retention","audit","never","firewall","bind","secrets","request",{"skillNo":97,"name":98,"nameZh":6,"description":99,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":100,"categories":101,"keywords":106,"publishedAt":35},"01M70PNT2Z4HMZPRBTAF6073NN","exposure-analysis","Read-only firewall analysis and effective host exposure reconstruction for Docker published ports, UFW bypass, stale rules, CDN scope, IPv6 asymmetry and external probe allowlists.","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fplugins\u002Fforensics\u002Fskills\u002Fexposure-analysis\u002FSKILL.md",[102,105],{"categoryNo":103,"categoryName":104,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000011","运维与部署",{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[107,108,109,79,110,84,111,112,86,113,76,114,88,115,116,91,92,117,118,119],"exposure analysis","analysis","unknown","credentials","collection","ufw","ports","internet","local","scope","reconstruction","operator","write",{"skillNo":121,"name":70,"nameZh":6,"description":71,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":122,"categories":123,"keywords":125,"publishedAt":35},"01M70P8QATMPKA78E4FT5D2TNA","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fframeworks\u002Fsecurity-engineering\u002Fskills\u002Fhost-hardening\u002FSKILL.md",[124],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[78,76,77,87,79,95,82,81,90,83,84,85,86,94,88,89,80,91,92,93],{"skillNo":127,"name":98,"nameZh":6,"description":99,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":128,"categories":129,"keywords":132,"publishedAt":35},"01M70NMPVJ5H0JH131P60FW4R8","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fframeworks\u002Fforensics-complete\u002Fskills\u002Fexposure-analysis\u002FSKILL.md",[130,131],{"categoryNo":103,"categoryName":104,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[108,107,91,110,84,111,86,109,76,114,88,115,116,79,92,113,112,117,118,119],{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":140,"publishedAt":35},"01M6CB4DDR0B4NNCFK7ZK7449H","fixture-skill","Exercise rule delivery.","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Frule-delivery\u002Fskills\u002Ffixture-skill\u002FSKILL.md",[139],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[141,142,143,144,145,146],"fixture skill","fixture","rule","delivery","true","exercise",{"skillNo":148,"name":149,"nameZh":6,"description":150,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":151,"categories":152,"keywords":154,"publishedAt":35},"01M6CB4AVK1W76MFMPP0JP32CJ","pi-local","Pi-local duplicate-precedence fixture.","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Fproviders\u002Fpi\u002Fproject\u002F.pi\u002Fskills\u002Fpi-local\u002FSKILL.md",[153],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[155,156,115,157,142],"pi","pi local","duplicate"]