data-quality-frameworks

Implement data quality validation with Great Expectations, dbt tests, and data contracts.

Updated Apr 23, 2026
One-click install
npx skills add https://github.com/SanketAdlak/PDMProjectDesign --skill data-quality-frameworks-sanketadlak
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: data-quality-frameworks
Source: https://github.com/SanketAdlak/PDMProjectDesign/tree/main/.agents/skills/data-quality-frameworks
Command: npx skills add https://github.com/SanketAdlak/PDMProjectDesign --skill data-quality-frameworks-sanketadlak

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires great_expectations.

What problem does it solve? Data pipelines often fail silently, letting null values, duplicates, stale records, and schema drift corrupt downstream analytics and ML models. This Skill provides production patterns for catching these issues early using Great Expectations suites, dbt tests, and formal data contracts. ## Core Features & Use Cases - Great Expectations Suites & Checkpoints: Build expectation suites covering schema, uniqueness, ranges, freshness, and statistical checks, then run them via checkpoints with Slack alerting on failure. - dbt Test Suites: Configure generic tests (unique, not_null, relationships, accepted_values), dbt_utils tests, custom generic tests in SQL, and singular tests for business rules like orphaned foreign keys. - Data Contracts: Define versioned contracts specifying schema, PII classification, SodaCL quality checks, and SLAs between data producers and consumers. - Use Case: A data team notices dashboards showing stale order data. Use this Skill to add a freshness expectation on created_at, a dbt recency test, and a Slack-notifying checkpoint so failures are caught within an hour. ## Quick Start Ask the AI to create a Great Expectations suite and dbt tests that validate an orders table for null order IDs, duplicate keys, valid status values, and data freshness.

Frequently Asked Questions about data-quality-frameworks

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up Great Expectations validation for a table?

Install great_expectations, run great_expectations init, then build an ExpectationSuite with checks like expect_column_values_to_not_be_null and expect_column_values_to_be_unique. Run it through a Checkpoint that stores results and updates Data Docs.

How to write dbt tests for data quality?

Add tests in your model's YAML file using built-in tests like unique, not_null, relationships, and accepted_values, plus dbt_utils tests like recency and expression_is_true. You can also write custom generic tests in SQL under tests/generic for reusable logic.

Great Expectations vs dbt tests for data quality?

Great Expectations suits source-data validation before transformation, with rich statistical expectations and Data Docs reporting. dbt tests run inside the warehouse alongside models, making them ideal for testing transformed tables and relationships in the same pipeline.

What is a data contract in data engineering?

A data contract is a versioned agreement between data producers and consumers defining schema, types, PII classification, quality checks (e.g., SodaCL), and SLAs for freshness and availability. It prevents breaking changes from silently reaching downstream consumers.

How do I get Slack alerts when data quality checks fail?

Add a SlackNotificationAction to your Great Expectations checkpoint's action_list with a slack_webhook and notify_on set to failure. The checkpoint then posts a rendered summary whenever validation does not pass.

When should I not test every column in a table?

Testing everything creates noise and maintenance burden. Focus on critical columns like primary keys, foreign keys, and fields feeding downstream decisions, and add tests incrementally as real issues surface rather than upfront.