build(gate)!: coverage leaves the gate and runs on demand
Both lanes printed a coverage total with no threshold (owner decision E32 D4). No real hit as a lane: the one time the number found anything (5 bugs, E32) it was read by hand, and since then it was a line nobody acted on. It was also the most expensive part of the vitest lane, and the run that flaked in E35 S1. The vitest lane runs without --coverage, the pytest lane runs plain pytest; docs/development.md gives both on-demand commands, and the register row says why.
This commit is contained in:
@@ -35,9 +35,5 @@ services:
|
||||
volumes:
|
||||
- ./:/app
|
||||
working_dir: /app
|
||||
# The suite, then the coverage total (E32 D4: reported, no threshold). pytest's exit code is the
|
||||
# lane's — the report is printed either way and never decides it.
|
||||
command:
|
||||
- sh
|
||||
- -c
|
||||
- 'python -m pytest --cov=app --cov-report= ; rc=$$?; echo ">> backend coverage (app/) $$(python -m coverage report --format=total)% of lines"; exit $$rc'
|
||||
# Coverage is on demand, not in the gate (E35): see docs/development.md.
|
||||
command: ["python", "-m", "pytest"]
|
||||
|
||||
@@ -7,8 +7,8 @@
|
||||
# basedpyright: the backend type-check lane (E27 S3). Pinned like everything else here — a type
|
||||
# checker whose version floats silently changes what "clean" means, and the ratchet baseline it
|
||||
# writes is keyed to the diagnostics THIS version produces.
|
||||
# pytest-cov: the coverage REPORT the gate prints (E32 D4) — a number to read, deliberately with no
|
||||
# threshold; "every regression test seen red" is the bar, not a percentage.
|
||||
# pytest-cov: the on-demand coverage report (docs/development.md) — a number to read, deliberately
|
||||
# with no threshold; "every regression test seen red" is the bar, not a percentage.
|
||||
# pip-audit: the gate's audit of requirements.lock (scripts/check.sh), blocking at any severity.
|
||||
basedpyright==1.40.1
|
||||
pytest==8.4.2
|
||||
|
||||
Reference in New Issue
Block a user