Repository navigation
release: copyright fixes, Google Play device catalog, duplicate merges (2026-10-07) #841
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: validate-data | |
| # Self-check: every PR runs the bundled lightweight validator. Heavy checks | |
| # (coverage gaps, schema migrations, ingestion smoke tests) live in TechEngine. | |
| on: | |
| pull_request: | |
| paths: | |
| - "data/**" | |
| - "app/validate.py" | |
| push: | |
| branches: [main, develop] | |
| paths: | |
| - "data/**" | |
| - "app/validate.py" | |
| jobs: | |
| self-validate: | |
| # Full scan of every record: only on pushes. PRs are covered by the scoped | |
| # engine-validate below (changed records + their FK targets). | |
| if: github.event_name == 'push' | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.12" | |
| - name: Self-check (bundled validator) | |
| run: python -m app.validate | |
| engine-validate: | |
| needs: self-validate | |
| # self-validate is skipped on PRs; a skipped need must not skip this job. | |
| if: ${{ !cancelled() && (needs.self-validate.result == 'success' || needs.self-validate.result == 'skipped') }} | |
| uses: GetTechAPI/TechEngine/.github/workflows/validate-data.yml@main | |
| with: | |
| data-ref: ${{ github.event.pull_request.head.sha || github.sha }} | |
| # PRs validate only the changed records; pushes to main/develop stay full. | |
| base-sha: ${{ github.event.pull_request.base.sha || '' }} |