From 6046d554191d8146d1e533d607f8b9f69edbe7fe Mon Sep 17 00:00:00 2001 From: lekss361 Date: Fri, 29 May 2026 20:07:04 +0300 Subject: [PATCH] =?UTF-8?q?chore(tradein):=20drop=20shared=20Caddyfile=20t?= =?UTF-8?q?imeout=20from=20#654=20=E2=80=94=20defer=20to=20devops?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Review-bot flagged Caddyfile.tradein-fragment as shared gendsgn.ru gateway infra needing devops review. The app-level asyncio.wait_for budgets already bound the slow enrichment chain, so the 502 fix stands without the gateway timeout. Caddy read/write timeout to be applied separately under devops review. --- tradein-mvp/deploy/Caddyfile.tradein-fragment | 16 +--------------- 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/tradein-mvp/deploy/Caddyfile.tradein-fragment b/tradein-mvp/deploy/Caddyfile.tradein-fragment index bc7216d2..73809453 100644 --- a/tradein-mvp/deploy/Caddyfile.tradein-fragment +++ b/tradein-mvp/deploy/Caddyfile.tradein-fragment @@ -15,21 +15,7 @@ handle_path /trade-in/api/* { # handle_path вырезает префикс /trade-in перед прокси → # FastAPI получает /api/v1/... - reverse_proxy tradein-backend:8000 { - # #654: явный read/write timeout. POST /api/v1/trade-in/estimate делает - # цепочку последовательных внешних вызовов (geocode → Overpass → Yandex - # valuation → IMV → Cian). In-app time-budget (config.py - # estimate_*_timeout_s) суммарно ≈28s worst-case; ставим upstream timeout - # ВЫШЕ него (45s), чтобы 503-деградация из приложения доходила до клиента - # как 503, а НЕ обрезалась прокси в непрозрачный 502/504. Делает поведение - # детерминированным и согласованным с in-app budget. - # SHARED-INFRA: этот фрагмент инклудится в основной gendsgn.ru Caddy-блок - # на bot-server — требует review devops перед deploy. - transport http { - read_timeout 45s - write_timeout 45s - } - } + reverse_proxy tradein-backend:8000 } handle /trade-in {