feat(sf-b1): GET /parcels/by-bbox — map entry endpoint + parcel_user_status table (#336)
deploy.yml #124 -Commit
c61c8c86af
pushed by
lekss361
feat(sf-b6): GET /parcels/{cad}/poi-score — weighted top-7 (#333)
deploy.yml #122 -Commit
b013fd886c
pushed by
lekss361
feat(sf-b5): extend /parcels/{cad}/analyze with 15 fields (EGRN/encumbrance/red_lines/risks/district prices) (#332)
deploy.yml #121 -Commit
493238447a
pushed by
lekss361
feat(sf-b7): GET /parcels/{cad}/snapshot.pdf — 1-page WeasyPrint export (#334)
deploy.yml #120 -Commit
4040cba4c0
pushed by
lekss361
feat(sf-b2): GET /users/me/recent-parcels — stub endpoint (auth TODO) (#329)
deploy.yml #119 -Commit
8673290009
pushed by
lekss361
fix(sf): exclude NULL competitors from aggregate calculations (velocity, market_avg, top_sellers) (#328)
deploy.yml #118 -Commit
e872b1ebe4
pushed by
lekss361
feat(obj-2): mapping backfill via pre-materialized temp tables (migration 117) (#327)
deploy.yml #117 -Commit
0c4d7f1ffb
pushed by
lekss361
fix(obj-2): trim migration 116 to GIST index only — INSERT CTE timed out in deploy (#326)
deploy.yml #116 -Commit
2bd80c5719
pushed by
lekss361
feat(obj-3): SF backend migrate to objective_lots ground truth (price 0.3% -> 81%) (#324)
deploy.yml #114 -Commit
7a8d59beb4
pushed by
lekss361
feat(obj-2): multi-feature mapping backfill (name+dev+district) — 142 → 200+ (#323)
deploy.yml #113 -Commit
79c9a8a034
pushed by
lekss361
feat(scrape-kn): parallel Phase B/C + wire obj_checks + documents + is_ekb auto-derive (#322)
deploy.yml #112 -Commit
f2983c86d7
pushed by
lekss361
fix(objective parser): use_float=True in ijson + default=str in json.dumps (#321)
deploy.yml #111 -Commit
c80d79e2d4
pushed by
lekss361
fix(deploy): trigger workflow on all data/sql/** changes, not only .sql (#320)
deploy.yml #110 -Commit
d1b721a3be
pushed by
lekss361
feat(trade-in): TI-2 PDF export 4-page + frontend enable button (#319)
deploy.yml #109 -Commit
3978aa5905
pushed by
lekss361
feat(trade-in): TI-3 frontend /trade-in page + 5 components + hooks (#317)
deploy.yml #108 -Commit
90eb5af883
pushed by
lekss361
feat(trade-in): TI-1 mock /trade-in/estimate endpoint + Pydantic + SQL migration (#316)
deploy.yml #107 -Commit
29dbbee2ac
pushed by
lekss361
fix(scrape-objective): stream-parse lots_pf via ijson to avoid OOM (#315)
deploy.yml #106 -Commit
389e141ec9
pushed by
lekss361
fix(scrape-objective): drop redundant self arg in sync_all_groups loop (#313)
deploy.yml #105 -Commit
fce48a8924
pushed by
lekss361
fix(scrape-objective): drop redundant self arg in sync_all_groups loop
ci.yml #104 -Commit
dbc9a880cf
pushed by
lekss361
fix(22k): quartirography — use f.flat_type not f.type (column doesn't exist) (#312)
deploy.yml #103 -Commit
fd2b09b806
pushed by
lekss361
feat(deploy): inject OBJECTIVE_API_KEY into backend/.env.runtime (#311)
deploy.yml #102 -Commit
a93bef4147
pushed by
lekss361
feat(22k): object page — full exposure 9 blocks (sales/quartirography/metro/photos/docs/specs/checks) (#310)
deploy.yml #101 -Commit
f8c382f885
pushed by
lekss361
feat(22d): domrf_catalog.py scraper for per-flat price/status from SSR HTML (#309)
deploy.yml #100 -Commit
4bed58b43c
pushed by
lekss361
feat(22c): domrf_kn_flat_plans new table + parser stub (#308)
deploy.yml #99 -Commit
b37e011aaa
pushed by
lekss361
feat(22begh): schema extension — flats+6 / objects+30 / developers+4 / metro_top3 (#306)
deploy.yml #98 -Commit
6612c1cd2b
pushed by
lekss361
feat(22i): domrf_kn_documents new table + parser (#305)
deploy.yml #97 -Commit
171a029997
pushed by
lekss361
fix(22j): DEDUP domrf_kn_infrastructure + ON CONFLICT (issue #297) (#304)
deploy.yml #96 -Commit
3183abe41b
pushed by
lekss361
feat(22f): domrf_obj_checks table — 6 "Проверено на наш.дом.рф" checks (#303)
deploy.yml #95 -Commit
16e3d5c86d
pushed by
lekss361