ENGINEERING

Diff OpenAPI on merge and alert consumer Slack channels on breaking changes

When a PR merges to main, diffs the new OpenAPI spec against the previous version, classifies each change as breaking or additive.

CategoryEngineering
Enginesim
Difficultyintermediate
Triggerevent
Steps6
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerPR merged to default branchGitHubGitHub
  • ActionFetch new + previous OpenAPI specGitHubGitHub
  • LogicDiff spec and classify changes
  • LogicStop if no breaking changes
  • ActionFormat breaking-change summary
  • OutputPost alert to consumer Slack channelsSlack

What it does

Watches your API repo for merges to the default branch, compares the committed OpenAPI spec to its prior revision, and surfaces only the changes that will actually break callers — removed endpoints, tightened types, newly required fields, deleted enum values. Additive changes are logged but stay quiet so consumers learn to trust the alert.

When to use it

You publish a REST API consumed by several internal teams and want them warned the moment a breaking edit lands on main, before it reaches their integration tests. Best when your spec lives in-repo and is the source of truth.

How it works

  1. 1A push/merge to the default branch triggers the flow.
  2. 2Fetch the new `openapi.yaml` and the version from the previous commit via the GitHub API.
  3. 3Run a structured diff that buckets each change as breaking, additive, or cosmetic.
  4. 4Branch: if no breaking changes, stop silently.
  5. 5For each breaking change, format a human-readable summary (endpoint, what changed, migration note).
  6. 6Post the summary to the mapped Slack channel for each affected consumer team.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect GitHubRepos, issues, pull requests, actions.
  2. 2
    Connect SlackChannels, DMs, threads, mentions.
  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.