Repository navigation
data_validation: OWASP 2026 lists, CVSS v4.0, format checks, 2020-12 schemas #15
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: datasets-validate-all | |
| # Runs data_validation/run_all_checks.py: every dataset's own validate.py | |
| # (including ones in sub-collections), then the shared checks in | |
| # data_validation/validators/ on every data file, and the cross-dataset | |
| # consistency check. The tests job runs the data_validation test suite on | |
| # each supported Python. The coverage report and anomaly list go to the job | |
| # summary for reviewers; they never fail the job. | |
| on: | |
| push: | |
| branches: [main] | |
| paths: | |
| - 'datasets/**' | |
| - 'data_validation/**' | |
| - '.github/workflows/datasets-validate-all.yml' | |
| pull_request: | |
| paths: | |
| - 'datasets/**' | |
| - 'data_validation/**' | |
| - '.github/workflows/datasets-validate-all.yml' | |
| permissions: | |
| contents: read | |
| jobs: | |
| validate: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - name: Set up Python | |
| uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 | |
| with: | |
| python-version: '3.11' | |
| - name: Install requirements | |
| run: python -m pip install --quiet -r data_validation/requirements.txt | |
| - name: Run every dataset validator and the shared checks | |
| run: python data_validation/run_all_checks.py --verbose | |
| - name: Cross-dataset consistency | |
| run: python data_validation/qc_tools/consistency_check.py | |
| - name: Coverage report and anomalies (job summary) | |
| if: always() | |
| run: | | |
| python data_validation/qc_tools/bias_report.py >> "$GITHUB_STEP_SUMMARY" | |
| { | |
| echo | |
| echo '## Anomalies' | |
| echo | |
| echo '```' | |
| python data_validation/qc_tools/anomaly_detector.py | |
| echo '```' | |
| } >> "$GITHUB_STEP_SUMMARY" | |
| # The tooling's own tests on every Python release it supports. | |
| tests: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| python-version: ['3.11', '3.12', '3.13'] | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - name: Set up Python | |
| uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Install requirements | |
| run: python -m pip install --quiet -r data_validation/requirements.txt | |
| - name: data_validation tests | |
| run: python -m pytest data_validation/tests -v |