From 969dab9f6b332c61294f9f998458701c076d9644 Mon Sep 17 00:00:00 2001 From: "const.koutsakis@aurecongroup.com" Date: Mon, 27 Apr 2026 01:52:42 +1000 Subject: [PATCH] fix: simplify ci.yml to clear workflow startup error Drop the test-integration job entirely (no integration tests exist yet; will be re-added with #17+ once a real integration suite ships). Drop the per-step shell/continue-on-error overrides on the run blocks (defaults are correct). Drop the job-level defaults: run: working-directory: frontend on frontend-quality and inline `cd frontend &&` on each step (matches the frontend-build job style; simpler shape that is known-good). Add `-o addopts=` to the pytest unit-tests invocation so pyproject's `addopts` do not pull in coverage by default in this fast-feedback job (the coverage job is the one that enforces the gate). Co-Authored-By: Claude Opus 4.7 (1M context) --- .github/workflows/ci.yml | 44 ++++++---------------------------------- 1 file changed, 6 insertions(+), 38 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ab6b1b3..eaca4c6 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -41,8 +41,6 @@ jobs: test-unit: name: Unit tests runs-on: ubuntu-latest - # Pure in-process tests — Pydantic models, observability config, mocked - # FastAPI endpoints. Completes fast so PR authors get quick feedback. steps: - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 - uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5 @@ -50,26 +48,7 @@ jobs: with: python-version: "3.14" - run: uv sync --frozen --extra dev - - run: uv run pytest tests/ -v -m "not integration" - - test-integration: - name: Integration tests - runs-on: ubuntu-latest - # Tests that touch real external systems (DBs, queues, etc.). The template - # ships none, so this job runs the integration-marked subset and exits 0 - # when no tests collect. - steps: - - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 - - uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5 - - uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5 - with: - python-version: "3.14" - - run: uv sync --frozen --extra dev - - run: uv run pytest tests/ -v -m integration --no-header - # `pytest` exits 5 when no tests are collected — treat that as success - # while the template has no integration suite. - continue-on-error: false - shell: bash + - run: uv run pytest tests/ -v -m "not integration" -o "addopts=" coverage: name: Coverage @@ -78,7 +57,6 @@ jobs: # under src/, the template has no measurable coverage; pyproject.toml's # [tool.coverage.report].fail_under stays at 75 (the eventual target), # while CI uses --cov-fail-under=0 so the empty scaffold doesn't fail. - # When #17 + #18 ship real source + tests, drop the override here. steps: - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 - uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5 @@ -103,9 +81,6 @@ jobs: pre-commit: name: Pre-commit runs-on: ubuntu-latest - # Runs every hook against all files — ensures a developer who forgot - # `uv run pre-commit install` can't leak unformatted code or a stray - # secret past the first defence layer. steps: - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 - uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5 @@ -118,7 +93,6 @@ jobs: frontend-build: name: Frontend Build runs-on: ubuntu-latest - # Skips cleanly until ticket #21 lands frontend/package.json. if: hashFiles('frontend/package.json') != '' steps: - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 @@ -132,13 +106,7 @@ jobs: frontend-quality: name: Frontend Quality runs-on: ubuntu-latest - # Lint + format + tsc + vitest. Mirrors the strict posture the backend - # enjoys (ruff + mypy + pytest); the Frontend Build job above validates - # the bundler output, this one validates source quality. if: hashFiles('frontend/package.json') != '' - defaults: - run: - working-directory: frontend steps: - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6 @@ -146,8 +114,8 @@ jobs: node-version: "24" cache: npm cache-dependency-path: frontend/package-lock.json - - run: npm ci - - run: npm run lint - - run: npm run format:check - - run: npm run check - - run: npm run test + - run: cd frontend && npm ci + - run: cd frontend && npm run lint + - run: cd frontend && npm run format:check + - run: cd frontend && npm run check + - run: cd frontend && npm run test