✅ QA PASS — все 6 binary DoD verified против merged code (PR #866, merged 07:31:10). DoD полностью code-level, runtime-БД не требуется.
PR #866 = scheduler-w…
⚠️ **QA: smoke требует prod-доступа, которого у bot-qa окна НЕТ — выполнена только наблюдаемая часть (GlitchTip). Нужен…
⏳ QA: code-уровень verified против merged diff (PR #863, merged 07:21:00 3f31d1f4), backtest — live-DB-gated.
✅ Code DoD (по диффу):
factorклампит…
⏳ QA: code-уровень verified против merged diff (PR #862, merged 07:19:37), runtime — deploy+scheduled-fire+tradein-DB gated.
**✅ Code DoD (проверено по…
✅ QA PASS — quarter_price_index estimator-интеграция (PR #858, merged 06:53). CLIENT-VISIBLE pricing — верифицировал по 4 осям.
**1. ⛔ Merge-gate…
⚠️ QA: частично — PR #844, re-run axe (wcag2a+best-practice) на /ui-preview/estimate @ 20:53.
✅ Закрыто:
- svg-img-alt (serious, recharts) — `aria-hidden="…
✅ QA PASS (минхеш-deliverable) + блокер «cian оживёт» вынесен в #843.
Re-verify (3-й прогон cian @ 20:38): fetched=0 — стабильно.…
✅ QA PASS — PhotoUpload file-input label (PR #841, merged). Live-verified.
Code: aria-label="Загрузить фото квартиры" добавлен на <input type="file">…
⏳ QA HOLD — minhash-фикс code-verified ✅, но live-acceptance НЕ выполняется: cian SERP сейчас отдаёт fetched=0 (не fetched>0, inserted=0 как…
❌ QA FAIL (incomplete) — PR #838 (merged 20:23) закрыл только исходный ~20-node набор; 12 serious color-contrast нод всё ещё live на `/ui-preview/est…
✅ QA PASS — Sentry alert на N подряд scraper-фейлов (PR #833, merged). Verified по merged diff.
scrape_runs.py:
CONSECUTIVE_FAILURE_ALERT_THRESHOLD = 3…
✅ QA PASS — N+1 → executemany (PR #832, merged). Verified по merged diff.
estimator._save_yandex_history_items:
for row in rows: db.execute(sql, row)→ `if rows:…
✅ QA PASS — Avito block-page detect + parse_failures observability (PR #830, merged). Verified по merged diff. Unit-only (live Avito не дёргался — IP забанен,…