ENGINEERING
Detect Flaky CI Failures and File an Owner-Assigned Linear Ticket
Watches GitHub Actions failures, confirms a test is intermittent by checking it passed on retry or recent reruns.
How it runs
The automated pipeline, trigger to output.
- TriggerGitHub Actions workflow run failsGitHub
- ActionFetch failed tests and recent reruns for the branchGitHub
- LogicBranch: intermittent (passed on retry) vs. consistent failure
- ActionResolve owner from CODEOWNERS for the test fileGitHub
- ActionCreate owner-assigned ticket in Flaky Tests projectLinear
- OutputPost quarantine summary to team Slack channelSlack
What it does
When a CI run fails, this workflow decides whether the failure is a real regression or a flaky test. A test is treated as flaky when the same test passed on a retry or on a recent run of the same branch. Confirmed flakes get a Linear ticket assigned to the owning engineer (resolved from CODEOWNERS) and a heads-up in Slack so the build can move forward.
When to use it
Run this when intermittent test failures are eroding trust in your pipeline and developers are blindly re-running jobs. It separates signal from noise automatically so genuine regressions still block while flakes get tracked and owned.
How it works
- 1GitHub webhook fires on a failed workflow run.
- 2The flow pulls the failed test names and checks GitHub for the same tests passing on retry or in the last few runs of the branch.
- 3A branch decides: consistent failure exits quietly (real bug, left to the PR check); intermittent failure continues.
- 4CODEOWNERS is read from the repo to map the test file to an owner.
- 5A Linear issue is created in the Flaky Tests project, assigned to that owner, with the run link and failure logs.
- 6A Slack message posts the quarantine summary to the team channel.
Set it up
What you configure once, before turning it on.
- 1Connect GitHubRepos, issues, pull requests, actions.
- 2Connect LinearIssues, projects, cycles, triage.
- 3Connect SlackChannels, DMs, threads, mentions.
- 4Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
- 5Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
- 6Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.
More Engineering workflows
Gate breaking API PRs behind downstream consumer acknowledgement
When a PR introduces a breaking contract change, comments the impact summary back on the PR, applies a blocking label.
Publish a versioned API changelog to Confluence on each release tag
On a new semver release tag, gathers the contract changes since the last release and writes a clean.
Agent reviews model-license fit and suggests compliant swaps on the PR
When a PR adds a Hugging Face model, an agent reads the model card and license, judges fit against your commercial-use policy.
Upgrade Impact Router to Module Code Owners
Maps a dependency-bump PR's affected modules to their CODEOWNERS, then DMs each owner on Slack with only the changelog slice that touches code they own.
Re-Voice IVR Prompts on Phone-Tree Config Merge
When a phone-tree config change merges in GitHub, regenerates the ElevenLabs audio for any prompt whose script changed in the diff and opens a follow-up PR adding the new audio…
Upstream Release to Notion Upgrade Brief
When a watched package publishes a new release, fetches the release notes, maps them to the internal modules that depend on it.
Run it inside a business
This workflow drops into a full company template. Import the org, and this is one of the playbooks its agents run.

Run this workflow in your colony.
14-day trial. No DevOps. No Sales call. Provisioned in under a minute.
