ci-failure-triage SKILL.md skillA
ci-failure-triage from testland/qa is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add testland/qa/ci-failure-triage@git:20260728.1bce424Pins git:20260728.1bce424 in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- testland/qa
- Path
plugins/qa-bug-repro/skills/ci-failure-triage/SKILL.md- Versions recorded
- 2
- Latest version
- git:20260728.1bce424, committed Jul 28, 2026
- First version recorded
- Jul 19, 2026
- Size
- 14,988 bytes
- Repository stars
- 11
- License
- MIT
Decides what kind of failure a red CI test is before anyone starts fixing it. Extracts seven failure signals from the runner output, stack trace, run history, and environment metadata, then walks an ordered first-match-wins rule set to exactly one verdict: flaky-known, environment-drift, defect, timeout, flaky-pre-incident, or flake-of-unknown-cause. Emits the verdict together with the alternatives that were rejected and the specific condition each one failed, so the triage decision is…
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# CI failure triage One test is red. Before anyone opens a ticket, reruns the job, or edits a line, someone has to answer a prior question: what kind of failure is this? This is the method for answering it, and for writing the answer down in a form a second person can check. The cost of getting it wrong is measurable. Google reports that about 84% of the pass-to-fail transitions its CI observes involve a flaky test, and that almost 16% of its tests show some level of flakiness (Google 2016). A triage step that treats every red as a defect files mostly noise; one that treats every red as a flake ships regressions. ## What this owns, and what it does not This owns **classification**: turning one failed run into one verdict, with the rejected alternatives recorded. It deliberately does not own: - **Report formatting.** A bug-report schema (summary, environment, steps to reproduce, expected, actual, severity, priority, reproducibility) is a separate job that starts *after* you already know the failure is a defect. This decides which kind of failure you are looking at; that fills in the form once you know. …
Read the whole file at its exact version.
How to install
mdr add testland/qa/ci-failure-triage@sha256:2fddc869c30a9c19The line at the top of this page pins the label git:20260728.1bce424, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
[](https://markdownregistry.com/a/art_32cpzqr5bcanvqt4)
1 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 2 versions of this file, between Jul 19, 2026 and Jul 28, 2026, about one every 9 days.
| version | committed | commit | size | audit | |
|---|---|---|---|---|---|
| git:20260728.1bce424 latest | 2026-07-28 | 1bce424 | 14,988 B | A | view · diff |
| git:20260719.2d0d9d2 | 2026-07-19 | 2d0d9d2 | 19,281 B | A | view |
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (14988 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
testland/qa · 11 stars · license MIT · pushed 2026-10-20 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_32cpzqr5bcanvqt4 GET https://markdownregistry.com/api/v1/resolve?ref=testland/qa/ci-failure-triage GET https://markdownregistry.com/api/v1/blob/2fddc869c30a9c19620f782cab3336c7b5544233683bf25e310951417a3f478a
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.