fix(tradein): time-budget estimate enrichment + observable errors to stop opaque 502 (#654) #673

Merged
bot-reviewer merged 3 commits from fix/tradein-654-502-timeout into main 2026-05-29 17:22:03 +00:00
Showing only changes of commit 6046d55419 - Show all commits

View file

@ -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 {