backend-tests трижды покраснел ПОСЛЕ зелёного pytest (4647 passed, покрытие
74.57% ≥ 65), и по логу невозможно понять, в каком из двух `if: always()`
шагов это случилось: act_runner не печатает баннеры обычных `run:`-шагов,
а оба шага в штатном режиме молчат — один пишет в $GITHUB_STEP_SUMMARY,
второй глушит вывод в /dev/null. Зелёный и красный прогоны в этом месте
неотличимы построчно.
Добавлены маркеры начала/конца обоих шагов.
Отдельно: `coverage report` уважает fail_under из pyproject и выходит с
кодом 2, а `run:` идёт под `bash -eo pipefail` — то есть шаг-ОТЧЁТ умел
ронять сборку. Воспроизведено локально (pytest exit=0, шаг exit=2).
Теперь код возврата печатается, а гейт остаётся там, где ему место —
в `pytest --cov-fail-under=65`.
`|| cov_rc=$?` вместо отдельной строки `cov_rc=$?`: под `set -e`
присваивание после упавшей команды не выполнилось бы, и код снова
потерялся бы.
Refs #2871