From a03afb8ae79543a08666aecbbc6c8b9aa59108f9 Mon Sep 17 00:00:00 2001 From: Krzysztof kuhy Rudnicki Date: Sun, 20 Sep 2026 21:54:16 +0200 Subject: [PATCH] CI runs the Flutter and web coverage bars; they only ran on pre-push before Co-Authored-By: Claude Opus 5 (1M context) --- .github/workflows/python-tests.yml | 33 ++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/.github/workflows/python-tests.yml b/.github/workflows/python-tests.yml index ea7fcf4..f758ba3 100644 --- a/.github/workflows/python-tests.yml +++ b/.github/workflows/python-tests.yml @@ -49,3 +49,36 @@ jobs: # Run as a module (like the screen-fits gate) so scripts/ resolves as a # package and the check can import the helpers it was split into. run: python3 -m scripts.verify_lock_popup_safety + + # The two coverage bars below used to run only in the local pre-push hook, + # which became a 1-second stamp check on 2026-09-20 (pre-commit's manual + # stage holds them now). Nothing else in CI runs the Flutter or web suites, + # so these jobs are the only place the 100% bars are enforced on every push. + flutter-coverage: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - uses: subosito/flutter-action@v2 + with: + flutter-version: 3.47.5 + channel: stable + + - name: flutter test --coverage, 100% of lib/ (workout app) + run: bash scripts/check_flutter_coverage.sh + + web-coverage: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-node@v4 + with: + node-version: 24.21.0 + cache: npm + cache-dependency-path: web/package-lock.json + + - name: vitest --coverage, 100% (status web UI) + run: | + npm --prefix web ci + npm --prefix web run coverage