[tradein] GET /estimate/{id} теряет POST-only поля (price_trend/last_scraped_at/avito_imv/dkp_corridor) #696

Closed
opened 2026-05-30 08:02:16 +00:00 by bot-backend · 3 comments
Collaborator

POST возвращает price_trend(4 pts), last_scraped_at, avito_imv, dkp_corridor; GET /{id} (shared-link, PDF reopen, ?id= restore) возвращает их null (house_id не ререзолвится в GET-хендлере). analogs lat/lon — рехидрируются ок.
Ожид: GET/{id} отдаёт те же поля (пересчитать в хендлере или персистить).
Факт: деградированный rehydrated-вид → карты тренда/свежесть пропадают на ?id=.

POST возвращает `price_trend`(4 pts), `last_scraped_at`, `avito_imv`, `dkp_corridor`; GET /{id} (shared-link, PDF reopen, ?id= restore) возвращает их **null** (house_id не ререзолвится в GET-хендлере). analogs lat/lon — рехидрируются ок. **Ожид:** GET/{id} отдаёт те же поля (пересчитать в хендлере или персистить). **Факт:** деградированный rehydrated-вид → карты тренда/свежесть пропадают на ?id=.
bot-backend added the
scope/backend
bug
tradein
labels 2026-05-30 08:02:16 +00:00
bot-backend added this to the Praktika demo — Mon 2026-06-01 milestone 2026-05-30 08:03:38 +00:00
lekss361 added the
priority/p2
status/ready
labels 2026-05-30 10:22:13 +00:00
Owner

auto-analyst triage: single-scope backend, distinct from closed IDOR #690 (this is house_id not re-resolved in GET handler → derived fields null on shared-link/PDF/?id= restore). No deps → status/ready + priority/p2.

auto-analyst triage: single-scope backend, distinct from closed IDOR #690 (this is house_id not re-resolved in GET handler → derived fields null on shared-link/PDF/?id= restore). No deps → status/ready + priority/p2.
bot-backend self-assigned this 2026-05-30 10:24:45 +00:00
bot-backend added
status/wip
and removed
status/ready
labels 2026-05-30 10:24:46 +00:00
bot-backend added
status/review
and removed
status/wip
labels 2026-05-30 10:34:08 +00:00
Author
Collaborator

Working on this in PR #710 (status/review).

Working on this in PR #710 (status/review).
bot-reviewer added
status/qa
and removed
status/review
labels 2026-05-30 11:06:28 +00:00
Collaborator

QA smoke PASS (PR #710, sha 466774d on prod)

Tested estimate 0444ae9b (ул. Хохрякова 48, 4к, 146.2м², 18 analogs) via GET /trade-in/api/v1/trade-in/estimate/{id}:

  • price_trend — PRESENT (5 pts, 2024-11 → 2026-02) ← strongest rehydrate signal
  • last_scraped_at — PRESENT (2026-05-24T07:06:11Z)
  • dkp_corridor — PRESENT ({count:3, median_ppm2:232800, period_months:12})
  • avito_imv — null (acceptable: best-effort, no Avito IMV widget data for this estimate; price_trend populated confirms fix)
  • analogs lat/lon — PRESENT (no regression)

UI /trade-in?id=0444ae9b: тренд-чарт «Динамика ₽/м²», ДКП-коридор (232 800 ₽/м² · 3 ДКП за 12 мес), метка свежести «Обновлено: …» — все видны. 0 console errors, 0 failed requests (8/8 API → 200). Screenshot: pr710-estimate-0444ae9b.png.

Regression: gendsgn.ru/ 200, /trade-in 200, GlitchTip — no new ERROR events post-deploy.

→ status/qa → status/done, closing.

✅ QA smoke PASS (PR #710, sha 466774d on prod) Tested estimate `0444ae9b` (ул. Хохрякова 48, 4к, 146.2м², 18 analogs) via `GET /trade-in/api/v1/trade-in/estimate/{id}`: - `price_trend` — PRESENT (5 pts, 2024-11 → 2026-02) ← strongest rehydrate signal - `last_scraped_at` — PRESENT (`2026-05-24T07:06:11Z`) - `dkp_corridor` — PRESENT (`{count:3, median_ppm2:232800, period_months:12}`) - `avito_imv` — null (acceptable: best-effort, no Avito IMV widget data for this estimate; price_trend populated confirms fix) - `analogs` lat/lon — PRESENT (no regression) UI `/trade-in?id=0444ae9b`: тренд-чарт «Динамика ₽/м²», ДКП-коридор (`232 800 ₽/м² · 3 ДКП за 12 мес`), метка свежести «Обновлено: …» — все видны. 0 console errors, 0 failed requests (8/8 API → 200). Screenshot: `pr710-estimate-0444ae9b.png`. Regression: `gendsgn.ru/` 200, `/trade-in` 200, GlitchTip — no new ERROR events post-deploy. → status/qa → status/done, closing.
bot-qa removed the
status/qa
label 2026-05-30 11:21:00 +00:00
bot-reviewer added the
status/done
label 2026-05-30 11:26:14 +00:00
Sign in to join this conversation.
No project
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lekss361/gendesign#696
No description provided.