Search

PythonReactSEOPDF
OpenClaw

ci-flake-triage

Detect flaky tests from JUnit XML retries and emit a triage report with top unstable cases.

daniellummis0 source installs☆ 0 Repository starsv1.0.0

Installation

Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.

SkillHub CLI

skillhub install daniellummis/ci-flake-triage

Inspect the source and compatibility requirements, then follow its installation steps.

Give your agent the source link and ask it to inspect instructions and dependencies before explaining the installation steps.

View source ↗Guides

Skill instructions

CI Flake Triage

Use this skill to turn noisy JUnit retry artifacts into a focused flaky-test report.

What this skill does

  • Reads one or more JUnit XML files (for example: first run + rerun artifacts)
  • Aggregates status per test case (passed, failed, skipped, error)
  • Flags flaky candidates when a test has both fail-like and pass outcomes
  • Separates persistent failures from flaky failures
  • Prints top flaky tests to prioritize stabilization work

Inputs

Optional:

  • JUNIT_GLOB (default: test-results/**/*.xml)
  • TRIAGE_TOP (default: 20)
  • OUTPUT_FORMAT (text or json, default: text)
  • FAIL_ON_PERSISTENT (0 or 1, default: 0) — exit non-zero when persistent failures exist
  • FAIL_ON_FLAKE (0 or 1, default: 0) — exit non-zero when flaky candidates exist

Run

Text report:

JUNIT_GLOB='artifacts/junit/**/*.xml' \
TRIAGE_TOP=15 \
bash skills/ci-flake-triage/scripts/triage-flakes.sh

JSON output for CI ingestion:

JUNIT_GLOB='artifacts/junit/**/*.xml' \
OUTPUT_FORMAT=json \
FAIL_ON_PERSISTENT=1 \
bash skills/ci-flake-triage/scripts/triage-flakes.sh

Run with bundled fixtures:

JUNIT_GLOB='skills/ci-flake-triage/fixtures/*.xml' \
bash skills/ci-flake-triage/scripts/triage-flakes.sh

Output contract

  • Exit 0 when no fail gates are enabled (default)
  • Exit 1 if FAIL_ON_PERSISTENT=1 and persistent failures are found
  • Exit 1 if FAIL_ON_FLAKE=1 and flaky candidates are found
  • In text mode, prints summary + top flaky + persistent failures
  • In json mode, prints machine-readable summary and testcase details

Source information

Source
github
Repository
openclaw/skills
Path
skills/daniellummis/ci-flake-triage
Version
1.0.0
Commit
bb57c483ce56c29c5d9dc40789f4665519d2dbc3
Classification source
rules
Status
active
Visibility
public

These signals come from indexed source analysis and may lag behind changes. Check the current source files.

Extracted content

SKILL.md
# CI Flake Triage

Use this skill to turn noisy JUnit retry artifacts into a focused flaky-test report.

## What this skill does
- Reads one or more JUnit XML files (for example: first run + rerun artifacts)
- Aggregates status per test case (`passed`, `failed`, `skipped`, `error`)
- Flags flaky candidates when a test has both fail-like and pass outcomes
- Separates persistent failures from flaky failures
- Prints top flaky tests to prioritize stabilization work

## Inputs
Optional:
- `JUNIT_GLOB` (default: `test-results/**/*.xml`)
- `TRIAGE_TOP` (default: `20`)
- `OUTPUT_FORMAT` (`text` or `json`, default: `text`)
- `FAIL_ON_PERSISTENT` (`0` or `1`, default: `0`) — exit non-zero when persistent failures exist
- `FAIL_ON_FLAKE` (`0` or `1`, default: `0`) — exit non-zero when flaky candidates exist

## Run

Text report:

```bash
JUNIT_GLOB='artifacts/junit/**/*.xml' \
TRIAGE_TOP=15 \
bash skills/ci-flake-triage/scripts/triage-flakes.sh
```

JSON output for CI ingestion:

```bash
JUNIT_GLOB='artifacts/junit/**/*.xml' \
OUTPUT_FORMAT=json \
FAIL_ON_PERSISTENT=1 \
bash skills/ci-flake-triage/scripts/triage-flakes.sh
```

Run with bundled fixtures:

```bash
JUNIT_GLOB='skills/ci-flake-triage/fixtures/*.xml' \
bash skills/ci-flake-triage/scripts/triage-flakes.sh
```

## Output contract
- Exit `0` when no fail gates are enabled (default)
- Exit `1` if `FAIL_ON_PERSISTENT=1` and persistent failures are found
- Exit `1` if `FAIL_ON_FLAKE=1` and flaky candidates are found
- In `text` mode, prints summary + top flaky + persistent failures
- In `json` mode, prints machine-readable summary and testcase details

Related skills

OpenClaw

geo-optimization

capt-marbles

Generative Engine Optimization (GEO) for AI search visibility. Optimize content to appear in ChatGPT, Perplexity, Claude, and Google AI Overviews. Use when optimizing websites, pages, or content for LLM discove...

OpenClaw

credex-protocol

capgoblin

Access unsecured credit lines for AI agents on the Arc Network using the Credex Protocol. Use for borrowing USDC against reputation, repaying debt to grow credit limits, providing liquidity as an LP, or managin...

OpenClaw

phantombuster

capt-marbles

Control PhantomBuster automation agents via API. List agents, launch automations, get output/results, check status, and abort running agents. Use when the user needs to run LinkedIn scraping, Twitter automation...