Skip to content

Roadmap foundation: reliable data and offline quality gates #160

Roadmap foundation: reliable data and offline quality gates

Roadmap foundation: reliable data and offline quality gates #160

Workflow file for this run

name: Quality
permissions:
contents: read
concurrency:
group: quality-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
push:
branches: [main, develop, "agent/**"]
pull_request:
branches: [main]
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.10", "3.11", "3.12"]
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: ${{ matrix.python-version }}
- name: Install offline test dependencies
run: |
python -m pip install --disable-pip-version-check --upgrade pip
pip install torch torchvision --index-url https://download.pytorch.org/whl/cpu
pip install numpy pyyaml pytest tqdm pillow
- name: Compile sources
run: python -m compileall -q src tests
- name: Run offline unit tests
run: python -m pytest -q
- name: Verify repository metadata
run: |
test -f README.md
test -f LICENSE
test -f pyproject.toml
test -d configs
test -d tests
- name: Verify clean public-package install
run: |
python -m pip install --no-deps --no-build-isolation --target /tmp/gamengen-install .
PYTHONPATH=/tmp/gamengen-install python -c "import gamengen, gamengen.config"
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: "3.12"
- name: Install linter
run: pip install ruff==0.15.21
- name: Lint public package
run: ruff check gamengen