From efa0bafa18d981dc712aa759416b3ccbf2b12d82 Mon Sep 17 00:00:00 2001 From: bot-backend Date: Fri, 3 Jul 2026 09:20:44 +0300 Subject: [PATCH] =?UTF-8?q?fix(tradein/security):=20404=20IMV-=D0=B0=D0=B4?= =?UTF-8?q?=D1=80=D0=B5=D1=81=20=E2=80=94=20warning=20=D0=B1=D0=B5=D0=B7?= =?UTF-8?q?=20traceback,=20=D0=BD=D0=B5=20exception-=D1=88=D1=83=D0=BC=20(?= =?UTF-8?q?#2234)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tradein-mvp/backend/app/api/v1/admin.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tradein-mvp/backend/app/api/v1/admin.py b/tradein-mvp/backend/app/api/v1/admin.py index c6197edb..ff45e927 100644 --- a/tradein-mvp/backend/app/api/v1/admin.py +++ b/tradein-mvp/backend/app/api/v1/admin.py @@ -688,8 +688,13 @@ async def scrape_avito_imv( has_loggia=has_loggia, ) except IMVAddressNotFoundError as e: - raise _safe_http_error( - 404, "IMV address not found", f"avito-imv: address not found for {address}" + # Ожидаемое клиентское условие (адрес не в базе Avito), НЕ сбой — logger.warning + # без traceback, чтобы не шуметь exception-событиями в GlitchTip. Адрес — в лог, + # не в HTTP-ответ. + error_id = uuid4().hex[:8] + logger.warning("avito-imv: address not found for %s (error-id=%s)", address, error_id) + raise HTTPException( + status_code=404, detail=f"IMV address not found (error-id: {error_id})" ) from e except Exception as e: raise _safe_http_error(502, "fetch failed", f"avito-imv: fetch failed for {address}") from e