One-click install
npx skills add https://github.com/MichaelSolati/mkai --skill test-flakiness-michaelsolati
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: test-flakiness
Source: https://github.com/MichaelSolati/mkai/tree/main/profiles/game-dev/skills/test-flakiness
Command: npx skills add https://github.com/MichaelSolati/mkai --skill test-flakiness-michaelsolati

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Flaky tests cause development teams to dismiss legitimate CI failures as intermittent issues, masking genuine bugs and reducing trust in automated testing pipelines. This Skill automates the detection of non-deterministic tests, classifies their root causes, and provides clear recommendations to either quarantine or fix them, restoring CI reliability.

Core Features & Use Cases

  • CI Log Analysis: Parses GitHub Actions logs, JUnit XML test results (for Godot, Unity, Unreal engines), and plain text CI output to aggregate pass/fail rates per test across multiple runs.
  • Flakiness Classification: Identifies likely root causes including timing/async issues, order dependencies, random seed usage, resource leaks, and floating point comparison errors.
  • Actionable Recommendations: Suggests targeted fixes for moderate flakiness, immediate quarantine steps for high flakiness, and monitoring guidance for suspected flaky tests.
  • Registry Maintenance: Updates the project's tests/regression-suite.md quarantine section and can generate full flakiness reports for team review. Use Case: For a game development team running CI pipelines for a Godot project, use this Skill after multiple test runs to identify flaky GdUnit4 tests, get specific fix instructions (like adding explicit awaits or using epsilon comparisons), and update the regression suite to track quarantined tests.

Quick Start

Use the test-flakiness skill to scan your latest CI run logs and receive a prioritized list of flaky tests with recommended fixes and quarantine steps.

Frequently Asked Questions about test-flakiness

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I detect flaky tests in my CI logs?

To detect flaky tests in CI logs, you can parse JUnit XML results and plain text CI output to aggregate pass/fail rates per test across multiple runs. This identifies non-deterministic failures by analyzing test result history.

What causes flaky tests in game development engines like Unity or Godot?

Flaky tests in game development are caused by timing or async issues, order dependencies, random seed usage, resource leaks, and floating point comparison errors. Classifying these root causes helps determine whether to quarantine or fix the affected tests.

How do I quarantine flaky tests in my regression suite?

You quarantine flaky tests by updating the project's tests/regression-suite.md quarantine section. This tracks non-deterministic tests separately, preventing them from masking genuine bugs while targeted fixes are applied or monitoring is conducted.

Does flaky test detection work with GitHub Actions and Unreal Engine?

Yes, flaky test detection works with GitHub Actions and Unreal Engine. It parses CI run logs and JUnit XML test results across multiple game development workflows to aggregate pass/fail rates and identify non-deterministic behavior.

What is the best way to fix non-deterministic CI failures?

The best way to fix non-deterministic CI failures is to classify their root causes and apply targeted fixes, such as adding explicit awaits for timing issues or using epsilon comparisons for floating point errors, while quarantining highly flaky tests.

Why do legitimate CI failures get dismissed as intermittent issues?

Legitimate CI failures get dismissed as intermittent issues because flaky tests exhibit non-deterministic pass/fail behavior. Automating test result history analysis restores trust by separating genuine bugs from timing or order dependency issues.