auto-sync: 2026-06-03 18:30:01

This commit is contained in:
Stream
2026-06-03 18:30:01 +03:00
parent 382df76bb6
commit 122144080b

View File

@@ -91,6 +91,19 @@ Baseline: 166 passed, 9 pre-existing 401 (test_webhooks.py).
- НЕ деплоил, НЕ мержил — мерж за Стримом после живой проверки.
- `.env.bak-*` (стрэй-бэкап) НЕ закоммичен.
## ДОП-ФИКС: mute Telegram в тестах (срочный, выполнен ПЕРЕД остальным)
Проблема: прогон pytest на проде слал РЕАЛЬНЫЕ Telegram Славе (тесты двигают стадию → `notify_stage_change``send_telegram`, читает живой `.env`).
Фикс: `tests/conftest.py` (новый) — autouse-фикстура `_no_telegram` глушит `send_telegram`.
- Патчит **источник** `src.notifications.send_telegram` (покрывает все `notify_*` и локальные `from .notifications import send_telegram` внутри функций — webhooks/plane, launcher, queue_worker, main).
- Дополнительно патчит `src.stage_engine.send_telegram` — там import на уровне модуля (3 прямых вызова), source-патч его НЕ перехватил бы.
- `raising=False` везде.
**Доказательство (не на доверии):** прогнал полную сюиту с ФЕЙКОВЫМИ telegram-кредами (`ORCH_TELEGRAM_BOT_TOKEN=fake-leak`, `CHAT_ID=99999`) + трип-вайр на `httpx.post` (через sitecustomize), бросающий **BaseException** (чтобы `except Exception` в send_telegram НЕ проглотил) при любом вызове `api.telegram.org`:
- БЕЗ conftest → трип-вайр срабатывает (`TelegramLeak: ...botfake-leak/sendMessage`) → утечка реальна.
- С conftest → **190 passed, 9 baseline, 0 обращений к api.telegram.org** (leak-файл не создан). Славе ничего не прилетело.
Коммит: `7fd6529 test(conftest): mute Telegram in all tests to stop prod leakage` — в том же PR #10.
## Замечание для Стрима (живая проверка)
- Rejected-вердикт (и `:rejected:` коммент) теперь **перезапускает агента предыдущей стадии** (через `STAGE_AUTHORS[prev_stage]`) — это унифицировано для обоих механизмов (раньше коммент-ветка для non-analysis только откатывала без перезапуска). Так выполнено требование ТЗ «откат + перезапуск агента».
- Стадийные статусы видны на доске только в проекте enduro (UUID per-project). При онбординге новых проектов — ORCH-10.