Audit confirmed: DOM.RF /portal/table API returns price=null for 99.7% of flats (both price_rub and price_per_m2 are NULL). Root cause is API limitation — per-flat pricing lives in a separate catalog endpoint not yet scraped (BUG #22). Adds defensive fallback in _norm_flat(): when price_rub is present but pricePerSquareMeter is absent, derive price_per_m2 = round(price_rub / total_area, 2). Covers partial API responses from any future endpoint that omits the computed rate. Adds 107_backfill_price_per_m2.sql for historical rows (~849 affected). |
||
|---|---|---|
| .. | ||
| cadastre | ||
| etl | ||
| exporters | ||
| generative | ||
| photos | ||
| scrapers | ||
| site_finder | ||
| __init__.py | ||
| analytics_queries.py | ||
| analytics_refresh.py | ||
| job_settings.py | ||
| objective_etl.py | ||
| objective_sync_config.py | ||