DATA OPS

dbt Schema-PR PII Pre-Merge Gate

When a GitHub pull request changes a dbt schema, inspects newly added columns for likely PII and posts a blocking review comment listing fields that need a sensitivity tag before…

CategoryData Ops
Enginesim
Difficultyintermediate
Triggerwebhook
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerGitHub PR opened/updated on dbt schema filesGitHubGitHub
  • LogicParse diff for newly added column definitions
  • ActionClassify each new column for PIIOpenAI
  • LogicDrop columns that already have a sensitivity tag
  • OutputPost blocking PR review comment with flagged fieldsGitHubGitHub

What it does

Triggers on pull requests that touch dbt schema or model files, identifies columns being added in the diff, classifies each for PII, and posts an inline review comment flagging any sensitive column that lacks a `meta.sensitivity` tag so it gets handled before the data ever lands.

When to use it

Use it to shift PII governance left into code review, catching sensitive fields at the PR stage instead of discovering them in the warehouse weeks later.

How it works

  1. 1A GitHub pull-request webhook fires when schema or model YAML/SQL changes.
  2. 2Parse the diff to extract newly added column definitions and any existing meta tags.
  3. 3Classify each new column for PII type and confidence from its name and description.
  4. 4A filter drops columns that already carry a sensitivity tag.
  5. 5If any untagged PII remains, post a GitHub review comment listing each field and the suggested tag, marking the check as failing.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect GitHubRepos, issues, pull requests, actions.
  2. 2
    Connect OpenAIModels, embeddings, files.
  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.