name: Validate

on:
  push:
  pull_request:

jobs:
  validate:
    runs-on: ubuntu-latest
    steps:
      - name: Check out repository
        uses: actions/checkout@v4

      - name: Set up Python
        uses: actions/setup-python@v5
        with:
          python-version: "3.11"

      - name: Install runtime and validation dependencies
        run: python -m pip install -e .

      - name: Validate repository
        run: python scripts/validate_repo.py

      - name: Run script and runtime tests
        run: python -m unittest discover -s scripts/tests

      - name: Run CLI smoke checks
        run: |
          gamedesignos --version
          python -m gamedesignos --version
          gamedesignos doctor --json
