SECOPS

Archive an audit trail when a security MR merges

When a security-labeled merge request merges, close its Linear tracking issue, snapshot the review record to a Confluence audit log, and confirm in Slack.

CategorySecOps
Enginesim
Difficultyintermediate
Triggerwebhook
Steps6
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerGitLab MR mergedGitLabGitLab
  • LogicFilter for security-labeled MRs
  • ActionFetch approval and reviewer recordGitLabGitLab
  • ActionClose linked Linear issue as auditedLinearLinear
  • ActionAppend row to Confluence audit logConfluenceConfluence
  • OutputConfirm in reviewer pod Slack channelSlack

What it does

Closes the loop after a security review. When a merge request carrying a `security::*` label is merged, it closes the linked Linear issue, captures who reviewed and approved, and writes a permanent record to a Confluence audit page so compliance has a defensible trail.

When to use it

Use it when you need to prove that security-labeled changes went through review before shipping, for example for SOC 2 or internal audit. It turns the day-to-day routing activity into evidence without manual record-keeping.

How it works

  1. 1A GitLab webhook fires when a merge request is merged.
  2. 2A filter keeps only MRs that carried a `security::*` label.
  3. 3The flow fetches the approval record and reviewer list from the GitLab API.
  4. 4It closes the linked Linear tracking issue and tags it `audited`.
  5. 5It appends a row to the Confluence security-review audit page with MR, reviewers, labels, and merge time.
  6. 6It posts a short confirmation to the originating reviewer pod's Slack channel.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect GitLabRepos, MRs, pipelines, registry.
  2. 2
    Connect LinearIssues, projects, cycles, triage.
  3. 3
    Connect ConfluenceSpaces, pages, blueprints.
  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.