Trunk flaky-test quarantining
SkillDev toolsUse Trunk's CI Autopilot MCP server to investigate a failing CI run, find/diagnose a flaky test, and quarantine it. Use when a CI run is red and might be flaky, or when asked to quarantine/investigate a specific test.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Trunk flaky-test quarantining skill
What this skill tells your AI
The instructions your AI receives, as published by dxos/dxos in .agents/skills/trunk-quarantine/SKILL.md and read by ahel’s review.
CI already uploads test results to Trunk, which detects flaky tests
statistically and quarantines (auto-skips) them instead of letting them block
merges — no upload setup is needed. The trunk MCP server ("CI Autopilot") is
already configured for this repo; each user just needs a one-time
per-user authentication. See REPOSITORY_GUIDE.md
for the auth steps if trunk tools aren't available yet.
Investigating a failing CI run
Given a GitHub Actions workflow URL (e.g. from gh run view or a PR check),
call investigate-ci-failure with that workflowUrl. It:
- Pulls Trunk's parsed test-result bundles for that run.
- Filters out tests already quarantined as known-flaky, so you only see real failures.
- Tells you if the job failed before tests ran (build/compile failure) — in
that case fall back to raw CI logs (
gh run view <id> --log-failed).
Prefer this over reading raw CI logs first when the repo has Trunk uploads configured — it does the flaky-vs-real triage for you.
Quarantining a specific flaky test
Do this whenever you've identified a test as flaky (from investigate-ci-failure,
a user report, or repeated unrelated CI failures) and want it stopped from
blocking merges.
- Find the test case ID, if you don't already have one:
call
search-testwith a fuzzytestNameSearchand therepoName(owner/repo). - Get evidence it's actually flaky before quarantining — call
fix-flaky-testwith thetestCaseId:- Omit
createNewInvestigationto fetch the latest existing investigation (ID, markdown summary, rendered facts). - Pass
createNewInvestigation: trueto enqueue a fresh manual investigation if there's no recent one, or if the failure looks different from what's on file. - If you already have an investigation ID, pass
investigationIddirectly instead of a test case ID.
- Omit
- Quarantine it. No MCP tool performs this write — it's a dashboard-only
action, gated by the repo's Manual Quarantine Permissions (admins-only in
some repos). So:
- Check whether the
fix-flaky-testresult includes a direct link to the test's Trunk dashboard page — surface it to the user. - Tell the user (or, if you have permission and are asked to do it yourself via a connected browser, do it) to open the test's details page and click Quarantine → Always, add a required comment, and Save. See REPOSITORY_GUIDE.md for the exact dashboard steps (details-page and table-row variants, plus how to un-quarantine).
- Never report a test as "quarantined" until the user confirms the dashboard action was completed — there's no way to verify or perform the write through these tools.
- Check whether the
Notes
repoNameis alwaysowner/repo(GitHub), not the Trunk org slug.orgSlugis optional on most tools — only needed to disambiguate when the authenticated user belongs to multiple Trunk orgs.
Signals
- GitHub stars
- 520
- Forks
- 49
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
trunk-quarantine- Source
- github.com/dxos/dxos