ENGINEERING

Nightly Flaky-Test Detector that Builds a Deflake Board

Runs the test suite multiple times each night in CI, identifies tests with inconsistent results across runs.

CategoryEngineering
Enginesim
Difficultyadvanced
Triggerschedule
Steps6
Setup~25 min

How it runs

The automated pipeline, trigger to output.

  • TriggerNightly schedule
  • ActionDispatch GitHub workflow to run suite N times on pinned commitGitHubGitHub
  • LogicCompare outcomes across runs and compute flip counts
  • LogicRank flakes and merge with existing board
  • ActionUpsert ranked Linear ticket per flaky testLinearLinear
  • OutputPost top-flakes digest to SlackSlack

What it does

It actively hunts for flakes rather than waiting for them to appear. Each night it kicks off repeated runs of the suite against the same commit, collects which tests produced different outcomes across identical runs, and feeds a Linear board where each flaky test is a ticket ranked by flip frequency, so the team always knows the worst offenders.

When to use it

Use it when flakes hurt but rarely reproduce on a single CI run. Multi-run detection surfaces low-frequency flakes that re-run-and-move-on never catches, and the ranked board makes triage obvious.

How it works

  1. 1A nightly schedule triggers the run.
  2. 2A GitHub action dispatches a workflow that executes the suite N times on the pinned commit and collects the per-run results.
  3. 3A logic step compares outcomes across runs and computes a flip count for each non-deterministic test.
  4. 4A logic step ranks flaky tests and merges with existing board entries.
  5. 5A Linear action upserts a ticket per flaky test with its flip frequency and updates priority.
  6. 6A Slack digest posts the top flakes for the morning standup.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect GitHubRepos, issues, pull requests, actions.
  2. 2
    Connect LinearIssues, projects, cycles, triage.
  3. 3
    Connect SlackChannels, DMs, threads, mentions.
  4. 4
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  5. 5
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  6. 6
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.