ENGINEERING

MR Pipeline Retry Guard with Flaky Lookup

On every merge-request pipeline failure, looks up whether the failing specs are known-flaky and posts a comment telling the author exactly which failures are safe to retry versus…

CategoryEngineering
Enginesim
Difficultyintermediate
Triggerevent
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerGitLab MR pipeline failed webhookGitLabGitLab
  • ActionParse failed specs from JUnit reportGitLabGitLab
  • ActionLook up specs in flaky-test registryPostgreSQLPostgres
  • LogicPartition known-flaky vs likely-real failures
  • OutputPost verdict comment and tag safe-to-retry on MRGitLabGitLab

What it does

Stops developers from guessing on red MR pipelines. When an MR pipeline fails, it parses the failing tests and checks each against the known-flaky registry, then posts a single MR comment that separates "known-flaky, safe to retry" failures from "not flaky, needs a fix" failures so the author knows whether a retry is justified.

When to use it

Use it when contributors waste cycles re-running pipelines hoping flakiness clears, or worse, retry away a genuine failure. This gives an authoritative per-failure verdict right in the MR.

How it works

  1. 1A GitLab merge-request pipeline-failed webhook fires.
  2. 2The flow fetches the JUnit report and extracts each failed spec.
  3. 3A Postgres lookup matches each failure against the flaky-test registry maintained by the quarantine bot.
  4. 4A logic step partitions failures into known-flaky versus likely-real.
  5. 5It writes a structured GitLab MR note: flaky failures with a retry suggestion, real failures called out as blocking.
  6. 6If every failure is known-flaky, it adds a `safe-to-retry` label to the MR.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect GitLabRepos, MRs, pipelines, registry.
  2. 2
    Connect PostgresAny Postgres URL — query, write, migrate.
  3. 3
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  4. 4
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  5. 5
    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.