15 seconds

Green build, dirty data.

The deploy succeeded. Duplicate ticket ids still landed in the warehouse the copilot reads.

Transformdbt rundbt testunique · not_nullAI layerOnly if green
Lesson notesTests that stop the pipeline: the short version+

Week 3 · Data audits & API trust boundary · about 3 minutes

What you will be able to do

Fail the data pipeline when a dbt test fails so bad ticket rows never reach the AI layer.

The idea

A transform that loads bad rows is worse than a failed job. dbt tests (unique, not_null, accepted values) are the gate between silver data and anything the model may quote.

Wire CI so a failed test fails the pipeline. Do not "warn and continue" into the copilot's corpus.

models:
  - name: current_tickets
    columns:
      - name: ticket_id
        tests: [unique, not_null]
      - name: owner
        tests: [not_null]
      - name: status
        tests:
          - accepted_values:
              values: [open, pending, closed]

If the test fails, the AI does not get a new snapshot. Full stop.

Key takeaways

  • unique and not_null tests belong on keys the AI will quote.
  • A failed dbt test fails the pipeline.
  • Keep the last good snapshot until data is clean.

Part of the Forward Deployed Engineer roadmap. New to the role? Start with what a Forward Deployed Engineer does.