← ClaudeAtlas

padosoft-ci-failure-triagelisted

Use this skill when a test or a job is red in CI and somebody wants to know why — "the pipeline is red", "test X fails only in CI", "it passes locally", "the browser test is flaky", "fix the failing check on the PR". It is the procedure for collecting the complete evidence before forming a hypothesis: the full run log rather than the failed-step extract, every artifact, the application logs from the same window, and the correlation between them, ending in a classification — test defect, application defect, environment defect, or genuinely flaky — and a fix that names a file and a line. Do not use it to design the workflow (padosoft-ci-workflow-gates), to write the tests (padosoft-test-integrity), or to debug something failing in front of you locally.
padosoft/skills · ★ 1 · AI & Automation · score 80
Install: claude install-skill padosoft/skills
# CI failure triage The failed-step extract tells you **where the run stopped**, not why. The cause is frequently in a step that passed — the database setup, the cache warm-up, the migration — or in a warning nobody reads. **The rule: never propose a fix for a CI failure from the summary. Collect everything, correlate, classify, then fix — naming the file and the line.** --- ## 1. Collect, before any hypothesis ```bash # the red run gh run list --workflow=<workflow>.yml --status=failure --limit 1 gh pr checks <PR> # everything it produced, into a gitignored directory mkdir -p ./_ci-debug/<RUN_ID> gh run download <RUN_ID> --dir ./_ci-debug/<RUN_ID>/ gh run view <RUN_ID> --log > ./_ci-debug/<RUN_ID>/full.log # mandatory gh run view <RUN_ID> --log-failed > ./_ci-debug/<RUN_ID>/failed.log # triage shortcut only ``` `--log-failed` is an extract. **The complete log is the requirement**, because the failing assertion is often a consequence of something three steps earlier that exited zero. When the artifacts are too large to pull whole, fetch by name or pattern rather than skipping them — and use a pattern, so a sharded matrix does not leave you with one shard out of six: ```bash gh run download <RUN_ID> --pattern "app-logs*" ``` ## 2. Read in this order 1. **The full run log** — including the steps that passed. 2. The failed-step extract, for fast orientation. 3. **The structured report**, if the runner emits one: the failure classification, silent errors, b