fix(ci): lint workflow's venv is missing the [web] extra

mypy --strict (files = ["src"]) and pytest --cov=ci_orchestrator both walk
the whole src tree, web/ included, but the lint job's venv only ever
installed .[dev] -- fastapi/starlette/uvicorn/jinja2/authlib were never
resolvable, so every symbol they touch degraded to Any under mypy (masking
real type errors, and producing a cascading "Returning Any" on
_is_htmx_request) and every tests/python/test_web_*.py would fail to import
under pytest. Install .[dev,web] instead. Verified against a fresh venv:
ruff/mypy --strict/pytest --cov all pass.
This commit is contained in:
2026-07-25 19:40:18 +02:00
parent 612e37844f
commit 4827cadada
+6 -1
View File
@@ -95,7 +95,12 @@ jobs:
rm -rf "$VENV_DIR"
python3 -m venv "$VENV_DIR"
"$VENV_DIR/bin/python" -m pip install --upgrade pip
"$VENV_DIR/bin/python" -m pip install -e ".[dev]"
# mypy --strict (files = ["src"]) and pytest --cov=ci_orchestrator both
# walk the whole src tree, web/ included -- [dev] alone leaves fastapi/
# starlette/uvicorn/jinja2/authlib unresolved, so every symbol they
# touch degrades to Any (masking real type errors) and every
# tests/python/test_web_*.py fails to import.
"$VENV_DIR/bin/python" -m pip install -e ".[dev,web]"
- name: ruff
shell: bash