diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f9938ba..923e678 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,10 +10,8 @@ permissions: contents: read jobs: - # ---------------------------------------------------------------- compile - # Byte-compiles every first-party Python file. Catches syntax errors (e.g. - # a misplaced `from __future__` import) without needing any dependencies. compile: + # Byte-compile every first-party .py to catch syntax errors. No deps. runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -22,17 +20,11 @@ jobs: python-version: "3.11" - name: py_compile first-party sources run: | - # Vendored forks (yt_dlp, spotify_dl) are excluded — they ship their - # own validity and use syntax not meant for this gate. - git ls-files '*.py' \ - | grep -vE '^(yt_dlp|spotify_dl)/' \ - | xargs python -m py_compile + git ls-files '*.py' | grep -vE '^(yt_dlp|spotify_dl)/' | xargs python -m py_compile echo "All first-party sources compile." - # ------------------------------------------------------------------- unit - # Pure-logic tests. The modules under test guard their optional/heavy - # dependencies, so only pytest is required. unit: + # Pure-logic tests; tested modules guard heavy deps, so only pytest needed. runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -46,10 +38,8 @@ jobs: - name: Run unit tests run: pytest tests/unit -v - # ------------------------------------------------------------ integration - # Boots the Flask services (no Discord/network) and exercises their HTTP - # surface — primarily the X-Conjurer-Api-Key auth contract end to end. integration: + # Boot the Flask services and assert the X-Conjurer-Api-Key auth contract. runs-on: ubuntu-latest steps: - uses: actions/checkout@v4