SECOPS

Escalate GitLab MRs awaiting security acknowledgment past SLA

On a schedule, finds security-labeled merge requests still waiting on reviewer acknowledgment beyond the SLA window and escalates them to the reviewer's manager pool in Slack.

CategorySecOps
Enginesim
Difficultyintermediate
Triggerschedule
Steps6
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerHourly schedule during business hours
  • ActionQuery GitLab for pending security MRsGitLabGitLab
  • LogicBucket MRs by time-in-queue vs SLA
  • ActionSlack reminder to reviewer and manager poolSlack
  • ActionPage AppSec on-call for critical breachesPagerDutyPagerDuty
  • OutputPost SLA breach summary to SlackSlack

What it does

Acknowledgment gates only work if stalled MRs surface. This sweep runs on a timer, finds security MRs that have been pending reviewer ack longer than the SLA, and escalates by age tier — gentle nudge, manager ping, or on-call page.

When to use it

Use it alongside an acknowledgment gate when you need to guarantee no security review silently rots in the queue and you have tiered SLAs for review turnaround.

How it works

  1. 1A schedule trigger runs every hour during business hours.
  2. 2An action queries GitLab for open MRs with a `security::*` label and a `needs-secreview` status.
  3. 3A logic step computes time-in-queue and buckets each MR into within-SLA, overdue, or critical.
  4. 4Overdue MRs get a Slack reminder to the assigned reviewer and their manager pool.
  5. 5Critical MRs trigger a PagerDuty incident for the AppSec on-call.
  6. 6A summary of all breaches posts to the security triage channel.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect GitLabRepos, MRs, pipelines, registry.
  2. 2
    Connect SlackChannels, DMs, threads, mentions.
  3. 3
    Connect PagerDutyIncidents, on-call, escalations.
  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.