Skip to main content
GoldenCheck plugs into the two places data-quality regressions usually slip through: warehouse models and pull requests.

dbt

Add the package to packages.yml:
packages:
  - git: "https://github.com/benseverndev-oss/goldenmatch.git"
    subdirectory: "packages/dbt/goldencheck"
    revision: main
Then run dbt deps. The package offers a SQL-native test macro and a Python runner. Use the test macro in a schema file:
models:
  - name: orders
    tests:
      - goldencheck_not_empty
Run a full scan against a model’s output:
python scripts/run_goldencheck.py orders --fail-on error
python scripts/run_goldencheck.py patients --fail-on warning --domain healthcare
The runner connects through profiles.yml, queries the model via dbt show, writes a temp CSV, runs the full profiler, and exits non-zero on findings at or above --fail-on.
Requires dbt-core 1.7+, goldencheck 0.5.0+, and Python 3.11+.

GitHub Actions

Scan CSV files in CI and post a findings summary on the pull request:
- uses: benseverndev-oss/goldencheck-action@v1
  with:
    files: "data/*.csv"
    fail-on: error
    config: goldencheck.yml
    llm-boost: true
    llm-provider: openai
  env:
    OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}

Inputs

InputRequiredDefaultValues
filesYesGlob pattern (for example data/*.csv).
fail-onNoerrorerror, warning.
configNoPath to goldencheck.yml.
llm-boostNofalsetrue, false.
llm-providerNoanthropicanthropic, openai.
python-versionNo3.12Python version string.
versionNolatestGoldenCheck version.

Outputs

OutputTypeDescription
errorsnumberTotal error count.
warningsnumberTotal warning count.
health-gradestringWorst health grade (A–F).
The action posts a summary table on the pull request and sets a pass/fail status check from the exit code.