name: tests on: push: pull_request: jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Set up Python uses: actions/setup-python@v5 with: python-version: "3.12" - name: Install dev dependencies run: pip install -r requirements-dev.txt - name: Run tests with coverage run: pytest --cov=tools --cov-report=term-missing # NOTE: the 80% coverage gate is intentionally NOT enforced yet. # Baseline coverage could not be measured locally (offline environment). # Once this workflow's first run reports the real number — and after the # P2 work adds the missing tests for main()/_format_* helpers — enforce it # by appending: --cov-fail-under=80