feat(tradein): hook matching в save_listings — fill listing_sources (PR I) (#595)
deploy-tradein.yml #341 -Commit
7e24ccbf2c
pushed by
Light1YT
feat(tradein): MapPicker snap marker — Phase 5 of #582 (#594)
deploy-tradein.yml #340 -Commit
42ab74e2e8
pushed by
Light1YT
fix(tradein): yandex_realty captures house number + parse_rub strips NBSP (#593)
deploy-tradein.yml #339 -Commit
aa70e9e155
pushed by
Light1YT
feat(tradein): persistent infra для backfill scripts (PR F) (#592)
deploy-tradein.yml #338 -Commit
1ce9e10012
pushed by
Light1YT
feat(tradein): Phase 2-3 of #582 — Yandex backfill + canonical audit (#591)
deploy-tradein.yml #337 -Commit
3c506222e6
pushed by
Light1YT
feat(auth): UserMenu — личный кабинет top-right (PR D) (#590)
deploy.yml #336 -Commit
56a7a36c9a
pushed by
Light1YT
feat(auth): UserMenu — личный кабинет top-right (PR D) (#590)
deploy-tradein.yml #335 -Commit
56a7a36c9a
pushed by
Light1YT
chore(security): sync admin hash в users.caddy.snippet (#588)
deploy.yml #334 -Commit
252bc2de76
pushed by
Light1YT
feat(rbac): pilot scope → только /trade-in/** (#587)
deploy.yml #333 -Commit
c08e4d7811
pushed by
Light1YT
feat(rbac): pilot scope → только /trade-in/** (#587)
deploy-tradein.yml #332 -Commit
c08e4d7811
pushed by
Light1YT
feat(rbac): frontend route-guard + nav filter (#586)
deploy.yml #331 -Commit
7a2b055b35
pushed by
Light1YT
feat(rbac): frontend route-guard + nav filter (#586)
deploy-tradein.yml #330 -Commit
7a2b055b35
pushed by
Light1YT
feat(rbac): role-based access control via X-Authenticated-User middleware (#585)
deploy.yml #329 -Commit
88cdfd6adb
pushed by
Light1YT
feat(rbac): role-based access control via X-Authenticated-User middleware (#585)
deploy-tradein.yml #328 -Commit
88cdfd6adb
pushed by
Light1YT
Merge pull request 'fix(tradein): убрать «PRINZIP» wordmark из шапки' (#584) from fix/tradein-hide-prinzip-brand into main
deploy-tradein.yml #326 -Commit
074e55af5f
pushed by
Light1YT
feat(tradein): этаж/этажность optional + best test presets по deal count (#558)
deploy-tradein.yml #325 -Commit
33c4c84467
pushed by
lekss361
fix(tradein): extract_street_name handles Nominatim reverse format (#557)
deploy-tradein.yml #324 -Commit
8c540ecec6
pushed by
lekss361
feat(tradein): «По вашей улице» — StreetDealsCard на real ДКП-сделки Росреестра (#556)
deploy-tradein.yml #323 -Commit
4d1c409e18
pushed by
lekss361
feat(tradein): GET /street-deals — ДКП-сделки Росреестра по улице target адреса (#555)
deploy-tradein.yml #322 -Commit
a63e459e25
pushed by
lekss361
feat(tradein/scripts): local Playwright runners для Cian backfill (bypass server-IP anti-bot) (#553)
deploy-tradein.yml #321 -Commit
136202dc80
pushed by
lekss361
feat(tradein-scripts): scrapers + probes + Phase C improvements (#551)
deploy-tradein.yml #320 -Commit
d2a0257639
pushed by
lekss361
fix(yandex-valuation): off-by-one cell index in _parse_row_cells (#552)
deploy-tradein.yml #319 -Commit
6bbb026cb4
pushed by
lekss361
Merge pull request 'feat(tradein): sell-time sensitivity (4 цены × срок продажи)' (#548) from feat/tradein-sell-time-backend into main
deploy-tradein.yml #318 -Commit
5394713bc7
pushed by
lekss361
fix(tradein): filter ДКП-only in rosreestr importer + re-enable deals (#549)
deploy-tradein.yml #317 -Commit
596842df8d
pushed by
lekss361
feat(tradein): «Росреестр» button — copy address + open EGRN request form (#550)
deploy-tradein.yml #316 -Commit
5bfacd51b0
pushed by
lekss361
feat(tradein): cian price-change badges + split chart Avito/Yandex (#547)
deploy-tradein.yml #315 -Commit
967e7185ca
pushed by
lekss361
feat(tradein): house analytics section (chart + KPI + sold list) (#546)
deploy-tradein.yml #314 -Commit
80850a591e
pushed by
lekss361
fix(yandex-valuation): curl_cffi chrome120 — Yandex gates SSR on Chrome TLS (#545)
deploy-tradein.yml #313 -Commit
f7a5c5d4f7
pushed by
lekss361
refactor(yandex-valuation): DOM-based parser via .OffersArchiveSearchOffers__row (#544)
deploy-tradein.yml #312 -Commit
8a88ea6508
pushed by
lekss361