DATA OPS
BigQuery breaking-change alert to Slack on every diff run
Diffs BigQuery dataset schemas against a stored baseline on a schedule and posts a formatted Slack alert listing only the breaking field changes.
How it runs
The automated pipeline, trigger to output.
- TriggerScheduled diff run starts
- ActionRead BigQuery table schemasBigQuery
- ActionFetch stored baselinePostgres
- LogicKeep breaking changes, drop additive
- OutputPost grouped Slack breaking-change alertSlack
- ActionUpdate baseline snapshotPostgres
What it does
This workflow pulls the schema of every table in a set of BigQuery datasets, compares each field against the last known-good baseline, and isolates breaking changes: removed fields, type changes, and REPEATED/REQUIRED mode changes. It then posts a single tidy Slack message per run summarizing which tables drifted and how. Clean runs post nothing, so the channel stays quiet until something actually breaks.
When to use it
Use it when a data-platform team needs fast, human-readable notice of upstream BigQuery changes but doesn't want a ticket for every tweak. Slack-first triage works well for teams who decide together whether a change warrants a migration.
How it works
- 1A scheduled trigger starts the diff.
- 2It reads table schemas from BigQuery via the metadata API.
- 3It fetches the stored baseline from Postgres and computes per-field differences.
- 4A logic step filters out additive-only changes and keeps breaking ones.
- 5If breaking changes remain, it posts a grouped Slack alert with table, field, and old-to-new type.
- 6It updates the baseline so the next run compares against current state.
Set it up
What you configure once, before turning it on.
- 1Connect BigQueryDatasets, queries, schemas.
- 2Connect PostgresAny Postgres URL — query, write, migrate.
- 3Connect SlackChannels, DMs, threads, mentions.
- 4Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
- 5Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
- 6Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.
More Data Ops workflows
BigQuery Per-Team Budget Breach Alert to PagerDuty
Tracks month-to-date BigQuery scheduled-query spend per team and, when a team crosses its monthly budget, pages the team's on-call in PagerDuty and snapshots the spend breakdown…
dbt orphan model detector with Linear cleanup tickets
Scans your dbt manifest for models that no other model, exposure, or BI tool consumes.
Weekly BigQuery Cost Trend Sheet and Exec Digest
Compiles week-over-week BigQuery scheduled-query cost by owner and dataset into a Google Sheet with trend columns.
Backfill Missing Owner Labels on BigQuery Scheduled Queries
Finds scheduled queries with no owner label, infers the likely owner from creator metadata and target-table lineage, proposes a label.
Daily BigQuery Scheduled-Query Cost Attribution to Owners
Each morning, totals the prior day's on-demand bytes-billed per scheduled query, maps each query to its owner from a label, and posts a per-owner cost leaderboard to Slack.
dbt source freshness watcher with severity-routed alerts
Checks Snowflake loaded-at timestamps against each dbt source's freshness SLA, then routes warnings to Slack and hard breaches to a PagerDuty incident so stale data never…
Run it inside a business
This workflow drops into a full company template. Import the org, and this is one of the playbooks its agents run.

Run this workflow in your colony.
14-day trial. No DevOps. No Sales call. Provisioned in under a minute.
