ENGINEERING

Honeycomb SLO burn auto-flips GitLab merge freeze

Watches a Honeycomb SLO burn alert and, when the budget burn rate crosses your threshold, applies a merge-freeze label to the GitLab project and posts a freeze notice to Slack.

CategoryEngineering
Enginesim
Difficultyintermediate
Triggerwebhook
Steps4
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerHoneycomb SLO burn-alert webhookHoneycomb
  • LogicCompare burn rate to threshold multiplier
  • ActionAdd or remove GitLab merge-freeze labelGitLabGitLab
  • OutputPost freeze/unfreeze notice to SlackSlack

What it does

This workflow turns your error budget into an enforcement gate. When Honeycomb reports that an SLO is burning faster than your allowed rate, it freezes merges on the affected GitLab project and tells the team why. When the burn rate drops back under threshold, it removes the freeze on the next check.

When to use it

Use it when you practice error-budget-based release governance and want the freeze to be mechanical rather than a judgment call someone forgets to make at 2am. Ideal for teams with a defined Honeycomb SLO per service mapped to a single GitLab project.

How it works

  1. 1Honeycomb fires an SLO burn-alert webhook into the workflow.
  2. 2The workflow reads the current burn rate and compares it to your configured multiplier (e.g. 14x for a 1-hour window).
  3. 3If over threshold, it calls the GitLab API to add the `merge-freeze` label and set the project's merge-request setting to block. If under threshold and a freeze label exists, it removes it.
  4. 4It posts the decision, the service name, and current budget remaining to the engineering Slack channel as the final notice.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect HoneycombDistributed traces and queries.
  2. 2
    Connect GitLabRepos, MRs, pipelines, registry.
  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.