DEVOPS

Confirm flag retirement and close debt issue when removal MR merges

Listens for merged GitLab MRs labeled flag-removal, marks the flag retired in Postgres, and closes the matching Linear cleanup issue so the debt ledger stays accurate.

CategoryDevOps
Enginesim
Difficultyintermediate
Triggerwebhook
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerGitLab MR merged webhookGitLabGitLab
  • LogicMatch flag-removal label, parse flag key
  • ActionMark flag retired in PostgresPostgreSQLPostgres
  • ActionClose Linear cleanup issueLinearLinear
  • OutputConfirm retirement in SlackSlack

What it does

Reacts to the merge of a feature-flag removal merge request, updates the flag's status to retired in your flag-state table, and closes the corresponding Linear cleanup issue. It keeps the debt ledger and the backlog in sync without manual bookkeeping.

When to use it

Use it after you have a flow that opens removal MRs and tracks them in Linear. This is the closing-the-loop half: it ensures a flag is only counted as retired once its code is actually gone and merged.

How it works

  1. 1A GitLab webhook fires when a merge request is merged.
  2. 2A filter checks the MR carries the flag-removal label and extracts the flag key from the MR title.
  3. 3A Postgres action updates that flag's row to status retired with a retired_at timestamp.
  4. 4A Linear action finds the cleanup issue referencing the flag key and transitions it to Done.
  5. 5A Slack message confirms the retirement to the platform channel with the MR and issue links.

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
    Connect LinearIssues, projects, cycles, triage.
  4. 4
    Connect SlackChannels, DMs, threads, mentions.
  5. 5
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  6. 6
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  7. 7
    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.