SkillHub

github-actions-conclusion-volatility-audit

v1.0.0

Audit GitHub Actions workflow conclusion volatility to surface unstable pipelines before they become chronic failures.

Sourced from ClawHub, Authored by Daniel Lummis

Installation

Please help me install the skill `github-actions-conclusion-volatility-audit` from SkillHub official store. npx skills add daniellummis/github-actions-conclusion-volatility-audit

GitHub Actions Conclusion Volatility Audit

Use this skill to detect unstable workflows that frequently flip between success and failure-like outcomes.

What this skill does

  • Reads one or more workflow run JSON exports
  • Groups runs by repository + workflow + branch
  • Calculates volatility using conclusion transitions across run history
  • Flags groups by warn/critical instability thresholds
  • Emits text or JSON output for CI reporting and quality gates

Inputs

Optional: - RUN_GLOB (default: artifacts/github-actions/*.json) - TOP_N (default: 20) - OUTPUT_FORMAT (text or json, default: text) - MIN_RUNS (default: 5) — minimum runs before severity is applied - WARN_INSTABILITY_PCT (default: 35) - CRITICAL_INSTABILITY_PCT (default: 60) - FAIL_ON_CRITICAL (0 or 1, default: 0) - WORKFLOW_MATCH, WORKFLOW_EXCLUDE (regex, optional) - BRANCH_MATCH, BRANCH_EXCLUDE (regex, optional) - REPO_MATCH, REPO_EXCLUDE (regex, optional)

Failure-like conclusions are: failure, cancelled, timed_out, action_required, startup_failure.

Collect run JSON

gh run view <run-id> --json databaseId,workflowName,headBranch,conclusion,createdAt,updatedAt,url,repository 
  > artifacts/github-actions/run-<run-id>.json

Run

Text report:

RUN_GLOB='artifacts/github-actions/*.json' 
WARN_INSTABILITY_PCT=35 
CRITICAL_INSTABILITY_PCT=60 
bash skills/github-actions-conclusion-volatility-audit/scripts/conclusion-volatility-audit.sh

JSON output + fail gate:

RUN_GLOB='artifacts/github-actions/*.json' 
OUTPUT_FORMAT=json 
FAIL_ON_CRITICAL=1 
bash skills/github-actions-conclusion-volatility-audit/scripts/conclusion-volatility-audit.sh

Output contract

  • Exit 0 in reporting mode
  • Exit 1 when FAIL_ON_CRITICAL=1 and one or more critical groups are found
  • Text output includes summary and top unstable workflow groups
  • JSON output includes summary, ranked groups, and critical_groups