gendesign/data/sql
Light1YT d1bc59a5dd
All checks were successful
CI / changes (push) Successful in 7s
CI / frontend-tests (push) Has been skipped
CI / changes (pull_request) Successful in 6s
CI / frontend-tests (pull_request) Has been skipped
CI / backend-tests (push) Successful in 6m31s
CI / backend-tests (pull_request) Successful in 6m29s
Deploy / changes (push) Successful in 5s
Deploy / build-frontend (push) Has been skipped
Deploy / build-backend (push) Successful in 2m16s
Deploy / build-worker (push) Successful in 3m34s
Deploy / deploy (push) Successful in 1m28s
chore(objective): fuzzy backfill objective_complex_mapping +115 dev-corroborated (#307 OBJ-2)
P0 goldmine: objective_lots (1.12M, 81% цен) связывается с domrf для velocity/
layout-аналитики. Mapping было 148 → +115 (107 high + 8 mid) = 263.

Fuzzy-match objective(project_name) ↔ domrf_kn_objects(comm_name) LATEST snapshot
region_cd=66 через pg_trgm на НОРМАЛИЗОВАННЫХ именах (strip ЖК-boilerplate с
\m\M word-boundary). Правило приёмки dev-corroborated: nsim≥0.62 AND dsim≥0.5 —
precision over recall для P0-цен (generic-имена с разным застройщиком, напр.
Солнечный/Прекрасный/Стрелки dsim=0.0, отклонены). match_method='auto_fuzzy_v2',
is_reviewed=false (для human-review топ-кандидатов), confidence-tier в note.
Idempotent ON CONFLICT (objective_complex_name, objective_group). REFRESH
CONCURRENTLY mv_layout_velocity после COMMIT.

Refs #307
2026-06-13 18:50:57 +05:00
..
01_schema_rosreestr_deals.sql fix(db): DROP dead BRIN index rosreestr_deals_period_brin (#122) 2026-05-14 23:29:01 +03:00
02_load_all_quarters.sh fix 2026-04-30 22:16:44 +03:00
02b_load_via_tunnel.py fix 2026-04-30 22:16:44 +03:00
03_materialized_views.sql add data 2026-04-26 22:30:52 +03:00
10_schema_domrf.sql add data 2026-04-26 22:30:52 +03:00
11_load_domrf.py add data 2026-04-26 22:30:52 +03:00
20_schema_domrf_extras.sql add data 2026-04-26 22:30:52 +03:00
21_load_domrf_extras.py add data 2026-04-26 22:30:52 +03:00
30_scrape_domrf.py add anal 2 2026-04-27 13:05:36 +03:00
31_schema_domrf_full.sql add data 2026-04-26 22:30:52 +03:00
31_schema_domrf_raw.sql add data 2026-04-26 22:30:52 +03:00
32_load_domrf_full.py add data 2026-04-26 22:30:52 +03:00
32_load_domrf_raw.py add data 2026-04-26 22:30:52 +03:00
33_schema_domrf_lazy.sql add anal 2 2026-04-27 13:05:36 +03:00
34_load_domrf_lazy.py add anal 2 2026-04-27 13:05:36 +03:00
35_schema_domrf_stats.sql add anal 2 2026-04-27 13:05:36 +03:00
36_parse_xlsx_stats.py add anal 2 2026-04-27 13:05:36 +03:00
37_cleanup_redundant.sql add anal 2 2026-04-27 13:05:36 +03:00
38_relations_fix.sql add anal 2 2026-04-27 13:05:36 +03:00
39_territory_aliases.sql add anal 2 2026-04-27 13:05:36 +03:00
40_relations.sql add data 2026-04-26 22:30:52 +03:00
40_scrape_history.py add anal 2 2026-04-27 13:05:36 +03:00
41_load_history.py add anal 2 2026-04-27 13:05:36 +03:00
42_schema_breakdown_widen.sql add anal 2 2026-04-27 13:05:36 +03:00
43_anton_import.sql add anal 2 2026-04-27 13:05:36 +03:00
44_import_anton_db.py add anal 2 2026-04-27 13:05:36 +03:00
45_relations_v2.sql add anal 2 2026-04-27 13:05:36 +03:00
50_schema_kn_extensions.sql add interactive parser of наш.дом.рф ЖК+flats with stealth Playwright 2026-04-27 17:58:40 +03:00
50_scrape_kn_flats.py add domrf extras parser (sale_graph + sales_agg + infra + photos) + 2026-04-27 18:35:46 +03:00
51_schema_kn_extras.sql add domrf extras parser (sale_graph + sales_agg + infra + photos) + 2026-04-27 18:35:46 +03:00
52_import_prinzip_crm.py ship #13-16: multi-target Dockerfile, per-object drill-in, CRM pipeline, 2026-04-27 19:32:37 +03:00
52_schema_prinzip_crm.sql ship #13-16: multi-target Dockerfile, per-object drill-in, CRM pipeline, 2026-04-27 19:32:37 +03:00
53_schema_kn_thumbs.sql fix ui lag 2026-04-27 20:26:55 +03:00
54_schema_scrape_log.sql add logs 2026-04-27 20:51:44 +03:00
55_schema_scrape_resume.sql add log scrapper 2026-04-27 21:50:44 +03:00
56_fetch_ekb_districts.py feat(geo): ЖК → district mapping через PostGIS-полигоны OSM (Limit_District_Geometry closed) 2026-04-29 08:03:38 +03:00
56_schema_ekb_districts_geom.sql feat(geo): ЖК → district mapping через PostGIS-полигоны OSM (Limit_District_Geometry closed) 2026-04-29 08:03:38 +03:00
57_kn_objects_district.sql feat(geo): ЖК → district mapping через PostGIS-полигоны OSM (Limit_District_Geometry closed) 2026-04-29 08:03:38 +03:00
58_fetch_cad_quarters_nspd.py sprint1: nspd scraper industrialization, per-bucket elasticity, cadastre cross-check, sentry releases 2026-04-30 21:51:19 +03:00
58_schema_cad_quarters.sql sprint1: nspd scraper industrialization, per-bucket elasticity, cadastre cross-check, sentry releases 2026-04-30 21:51:19 +03:00
59_backfill_obj_cad_quarter.sql sprint1: nspd scraper industrialization, per-bucket elasticity, cadastre cross-check, sentry releases 2026-04-30 21:51:19 +03:00
60_v_zk_rosreestr_velocity.sql sprint1: nspd scraper industrialization, per-bucket elasticity, cadastre cross-check, sentry releases 2026-04-30 21:51:19 +03:00
61_import_nspd_batch.py sprint1: nspd scraper industrialization, per-bucket elasticity, cadastre cross-check, sentry releases 2026-04-30 21:51:19 +03:00
62_scrape_nspd_full.py sprint1: nspd scraper industrialization, per-bucket elasticity, cadastre cross-check, sentry releases 2026-04-30 21:51:19 +03:00
63_schema_nspd_runs.sql fix 2026-04-30 22:16:44 +03:00
64_v_zk_rosreestr_velocity.sql fix 2026-04-30 22:16:44 +03:00
65_partitions_rosreestr_2024_h1.sql fix 2026-04-30 22:16:44 +03:00
66_indexes_recommend.sql audit-fix: 27mo окно, MODE bucket, индексы recommend_mix 2026-04-30 22:41:43 +03:00
67_refresh_ekb_districts_median.sql fix(scrape): SQLAlchemy text() парсил ':00:' regex как named-param 2026-04-30 23:16:11 +03:00
68_schema_objective.sql feat(objective): integrate api.objctv.ru — auth, schema, weekly sync 2026-05-07 21:04:00 +03:00
69_objective_smoke.py ignore 2026-05-07 21:04:38 +03:00
69b_objective_minimal.py ignore 2026-05-07 21:04:38 +03:00
70_parse_objective_raw.py fix(objective parser): use_float=True in ijson + default=str in json.dumps (#321) 2026-05-17 19:11:25 +00:00
71_etl_anton_sqlite_to_pg.py feat(objective): full sync pipeline + dynamic admin config 2026-05-10 19:54:15 +03:00
72_objective_sync_config.sql feat(objective): full sync pipeline + dynamic admin config 2026-05-10 19:54:15 +03:00
73_complexes_master.sql fix(sql): wrap 73_complexes_master.sql in BEGIN/COMMIT (atomic apply) (#125) 2026-05-14 23:29:28 +03:00
74_dedupe_unified_views.sql feat(db): canonical complexes + unified views + naming consistency 2026-05-10 21:11:20 +03:00
75_unification_naming.sql feat(db): canonical complexes + unified views + naming consistency 2026-05-10 21:11:20 +03:00
76_complex_connectivity.sql feat(geo): NSPD bulk-fetcher без Playwright + resume-friendly UI 2026-05-11 08:53:28 +03:00
77_nspd_geo_jobs.sql refactor(nspd-geo): unify on rosreestr2coord v5, drop legacy column 2026-05-11 14:13:33 +03:00
78_drop_use_rosreestr2coord.sql refactor(nspd-geo): unify on rosreestr2coord v5, drop legacy column 2026-05-11 14:13:33 +03:00
79_relax_objective_raw_payload_null.sql fix(scrape-objective): stream-parse lots_pf via ijson to avoid OOM (#315) 2026-05-17 16:37:30 +00:00
80_complexes_backfill_nulls.sql feat(db): backfill complexes nulls + add job_settings (migrations 80, 81) 2026-05-11 15:30:44 +03:00
81_job_settings.sql feat(db): backfill complexes nulls + add job_settings (migrations 80, 81) 2026-05-11 15:30:44 +03:00
82_osm_poi_ekb.sql feat(db): osm_poi_ekb table for site-finder POI analysis 2026-05-11 18:06:28 +03:00
83_cad_parcels_geom.sql feat(site-finder): cad_parcels_geom migration + POI markers on map + bulk-job UX 2026-05-11 19:54:56 +03:00
84_osm_noise_sources_ekb.sql feat(db): osm_noise_sources_ekb for site-finder noise scoring 2026-05-11 20:35:27 +03:00
85_pzz_zones_ekb.sql feat(site-finder): ПЗЗ territorial zones from Rosreestr PKK6 + zoning in analyze 2026-05-11 21:51:51 +03:00
86_v_bucket_success_score.sql fix(sf-20): adaptive district threshold 30→15 with data_confidence flag 2026-05-17 16:34:52 +03:00
87_on_demand_indexes.sql feat(site-finder): auto-fetch cadastre geometry on-demand (#93) (#95) 2026-05-12 09:02:17 +03:00
88_nspd_quarter_dumps.sql feat(db): add nspd_quarter_dumps table for PKK harvest persistence (#94 pt.3/4) (#110) 2026-05-12 18:22:50 +03:00
89_drop_dead_brin_rosreestr_deals.sql fix(db): DROP dead BRIN index rosreestr_deals_period_brin (#122) 2026-05-14 23:29:01 +03:00
90_user_weight_profiles.sql feat(db): schema user_weight_profiles (#114 sub-PR 1/4 — foundation) (#136) 2026-05-15 00:19:33 +03:00
91_engineering_networks_191fz.sql feat(infra): auto-apply data/sql/*.sql migrations in deploy pipeline (#150) (#151) 2026-05-15 08:06:54 +03:00
92_cad_bulk_layers.sql fix(db): retire ALL legacy cad_buildings index names before rename (#168 hotfix2) (#174) 2026-05-15 14:09:40 +03:00
93_cad_parcels_geom_multipolygon.sql fix(cadastre): cad_parcels.geom Polygon -> MultiPolygon (migration 93) (#185) 2026-05-15 18:52:38 +03:00
94_mv_layout_velocity.sql feat(analytics): mv_layout_velocity MV + refresh helper (#113 PR B) (#194) 2026-05-16 08:26:59 +00:00
95_mv_quarter_price.sql feat(analytics): mv_quarter_price_per_m2 MV + refresh helper (#33 D1 PR A) (#209) 2026-05-16 11:12:01 +00:00
96_ekburg_construction_permits.sql feat(permits): ЕКБ РНС/РВЭ xlsx parser + schema + ETL (#105 PR A) (#211) 2026-05-16 11:41:21 +00:00
97_objective_backfill_indexes.sql feat(etl): objective_complex_mapping backfill via pg_trgm (#203) (#214) 2026-05-16 12:47:09 +00:00
98_nspd_quarter_dumps_opportunity_flag.sql fix(nspd): rename migration 89→98, fix red lines ST_Area→ST_Length (#220) 2026-05-16 19:33:14 +03:00
99_nspd_entities_denorm.sql fix(sql): escape apostrophe in migration 99 COMMENT (deploy hotfix) 2026-05-16 21:02:00 +03:00
99a_quarter_price_index.sql feat(db): mv_quarter_price_index — quarter price-index из ДКП (Refs #760) (#792) 2026-05-30 17:05:51 +00:00
99b_grant_quarter_price_index_fdw.sql feat(db): quarter_price_index FDW foreign table + monthly refresh (Refs #762) (#797) 2026-05-30 17:16:28 +00:00
100_fix_mv_layout_velocity_weighted_avg.sql fix(sf-21): mv_layout_velocity weighted AVG — P0 data corruption 2026-05-17 16:53:36 +03:00
100_tradein_fdw_role.sql feat(tradein): postgres_fdw live read of gendesign.cad_buildings (replaces snapshot) (#493) 2026-05-24 08:57:30 +00:00
100_user_weight_profiles_default_seed.sql feat(#114): seed 3 default weight presets + include_system API param 2026-05-16 22:49:56 +03:00
101_user_custom_pois.sql feat(#254): user_custom_pois — backend schema + CRUD + scoring integration 2026-05-17 09:34:33 +03:00
102_cad_nspd_overlay_tables.sql fix(#265 review): CRS 3857→4326 + stable zone_id hash + rename 102 + tx comment 2026-05-17 10:45:52 +03:00
103_seed_prinzip_mappings.sql fix(sf-04): seed PRINZIP project mappings в objective_complex_mapping 2026-05-17 11:57:06 +03:00
104_seed_bulk_mappings.sql fix(sf-04b): bulk seed mappings для всех ЖК с активностью в Objective 2026-05-17 13:36:34 +03:00
105_add_sales_started_flag.sql feat(sf-18): is_sales_started flag для domrf_kn_objects (#292) 2026-05-17 14:09:21 +00:00
106_backfill_obj_class_from_ai_description.sql fix(sf-15): rename migration 105 → 106 (collision with PR #292 sf-18) 2026-05-17 17:03:16 +03:00
107_backfill_price_per_m2.sql fix(sf-16): derive price_per_m2 from price_rub in _norm_flat + backfill SQL (#298) 2026-05-17 14:32:23 +00:00
108_bug22a_kn_missing_fields_audit.sql fix(bug-22a): map missing kn-API fields (flat_number/living_area/wall_type/energy_eff) + backfill (#302) 2026-05-17 14:59:02 +00:00
110_22j_dedup_infrastructure.sql fix(22j): DEDUP domrf_kn_infrastructure + ON CONFLICT (issue #297) (#304) 2026-05-17 15:15:03 +00:00
111_22f_domrf_obj_checks.sql feat(22f): domrf_obj_checks table — 6 "Проверено на наш.дом.рф" checks (#303) 2026-05-17 15:07:24 +00:00
112_22i_domrf_documents.sql feat(22i): domrf_kn_documents new table + parser (#305) 2026-05-17 15:21:31 +00:00
113_22begh_kn_schema_extension.sql feat(22begh): schema extension — flats+6 / objects+30 / developers+4 / metro_top3 (#306) 2026-05-17 15:26:59 +00:00
114_22c_flat_plans.sql feat(22c): domrf_kn_flat_plans new table + parser stub (#308) 2026-05-17 15:39:34 +00:00
115_trade_in_estimates.sql feat(trade-in): TI-1 mock /trade-in/estimate endpoint + Pydantic + SQL migration (#316) 2026-05-17 16:45:06 +00:00
116_obj2_multi_feature_matcher.sql fix(obj-2): trim migration 116 to GIST index only — INSERT CTE timed out in deploy (#326) 2026-05-17 20:21:58 +00:00
117_obj2_mapping_backfill_fast.sql feat(obj-2): mapping backfill via pre-materialized temp tables (migration 117) (#327) 2026-05-17 20:34:42 +00:00
118_22d_catalog_object_scraped_at.sql feat(22d): domrf_catalog_object scraper — fill ~25 NULL kn_objects cols from SSR __NEXT_DATA__ (#335) 2026-05-17 21:26:22 +00:00
118_pilot_requests.sql feat(sf-b3): POST /pilot/request + pilot_requests table 2026-05-18 00:01:35 +03:00
119_parcel_user_status.sql feat(sf-b1): GET /parcels/by-bbox — map entry endpoint + parcel_user_status table (#336) 2026-05-17 21:25:48 +00:00
120_backfill_kn_price_per_m2.sql fix(tradein): backfill kn price_per_m2 via sale_graph + peer median (#573) (#625) 2026-05-28 13:50:45 +00:00
121_backfill_obj_class_kn_api.sql fix(tradein): backfill kn obj_class (parser + 3-pass) (#572) (#628) 2026-05-28 15:04:32 +00:00
122_grant_rosreestr_to_fdw_reader.sql feat(tradein): автоматизация cian-backfill + rosreestr-import через scheduler (#560 #563) (#630) 2026-05-28 15:31:24 +00:00
123_macro_indicator.sql feat(site-finder): macro_indicator table + backfill + reader (#945 PR A) (#963) 2026-06-02 18:41:28 +00:00
124_domrf_kn_free_flats.sql feat(domrf): persist domrf_kn_objects.free_flats (#950 PR A) (#1002) 2026-06-02 20:06:29 +00:00
125_supply_layers.sql feat(db): supply_layers store + latest view (#950 PR B) (#1003) 2026-06-02 20:21:04 +00:00
126_domrf_housing_macro.sql feat(db): Dom.РФ housing/escrow → macro_indicator §7.10 (#946, partial) 2026-06-03 17:05:33 +05:00
127_analysis_runs.sql feat(db): analysis_runs versioned store + latest-view §22 (#993) 2026-06-03 17:14:47 +05:00
128_supply_layers_dev_group_key.sql fix(supply-layers): thread dev_group_name into L3 upsert key (#970 CRITICAL) 2026-06-04 10:06:30 +05:00
129_cad_parcels_quarter_cad_trigger.sql fix(db): auto-derive cad_parcels.quarter_cad_number trigger (on-demand ingest 500) 2026-06-04 12:19:21 +05:00
130_cad_parcels_default_source.sql fix(db): default cad_parcels.source in trigger (on-demand ingest 2nd NOT NULL gap) 2026-06-04 12:49:46 +05:00
131_district_vocab_map.sql feat(sql): add ekb_district_alias micro->admin vocab bridge (131) 2026-06-05 06:39:50 +05:00
132_ird_overlays.sql feat(sql): ird_overlays durable overlay store for ИРД geometry (#1078) 2026-06-06 18:08:40 +00:00
133_zone_regulation_cache.sql feat(sf): zone_regulation_cache — ПЗЗ-регламент по zone_index + числовой экстракт (#1099) 2026-06-06 19:31:28 +00:00
134_planning_projects.sql feat(sf): ППТ/ПМТ WFS ingest → planning_projects (future-supply, #1104) 2026-06-06 20:25:23 +00:00
135_newbuilding_listings.sql feat(sf): newbuilding_listings house-grain таблица для future-ЖК слоя (#1108) 2026-06-06 21:48:51 +00:00
136_land_reservation.sql feat(sf): ПАГЕ-парсер изъятия/резервирования → land_reservation (#1118) 2026-06-07 10:15:03 +00:00
137_ekb_krt_sites.sql feat(sf): scraper реестра КРТ-площадок ЕКБ → ekb_krt_sites (#1126) 2026-06-07 11:24:49 +00:00
138_ekb_ppt_tep.sql feat(sf): ППТ/ПМТ ТЭП-парсер (Табл.11/12/13) → ekb_ppt_tep MVP (#1133) 2026-06-07 11:54:40 +00:00
139_ekb_genplan_functional_zone.sql feat(sf): ingest функц.зон генплана ЕКБ-2045 из ГИСОГД-СО WFS → ekb_genplan_functional_zone (#1137) 2026-06-07 12:03:39 +00:00
140_domrf_documents_unique_nulls_not_distinct.sql fix(db): dedupe domrf_kn_documents + UNIQUE NULLS NOT DISTINCT (#1206) 2026-06-13 06:17:13 +00:00
140_ekb_krt_geometry.sql perf(sf): КРТ-геометрия в БД, _krt_at из БД вместо живого WFS (#1139) 2026-06-07 12:14:35 +00:00
141_okn_objects.sql feat(sf): ingest ОКН-объектов ЕКБ из АИС ЕГРКН (точки+категория) → okn_objects (#1141) 2026-06-07 12:51:18 +00:00
142_pat_subzones.sql feat(sf): подзоны ПАТ Кольцово → pat_subzones (#1150) 2026-06-07 14:43:07 +00:00
143_genplan_makevalid_backfill.sql fix(sf): ST_MakeValid genplan geom + backfill 881 invalid polygons (#1157) 2026-06-07 17:59:04 +00:00
144_audit_log.sql feat(rbac): add analyst role + §19 audit-log middleware (#962) 2026-06-08 12:16:19 +05:00
145_insight.sql feat(insights): manual-entry Insight entity CRUD + §19 audit (#948 part A) 2026-06-08 12:41:39 +05:00
146_location.sql feat(location): district-level Location entity + indices (#948 part B) 2026-06-08 13:28:19 +05:00
147_location_demand_comment.sql fix(db): sync location.demand_index comment to city-relative (#948) 2026-06-08 14:04:51 +05:00
148_own_planned_project.sql feat(site-finder): own-portfolio data source for §25.3 cannibalization (#1169 PR1) 2026-06-08 16:21:53 +05:00
149_developer_attribution.sql feat(site-finder): детерминированная атрибуция застройщика в analyze (#1088) 2026-06-13 16:13:45 +05:00
150_objective_mapping_backfill.sql chore(objective): fuzzy backfill objective_complex_mapping +115 dev-corroborated (#307 OBJ-2) 2026-06-13 18:50:57 +05:00
decode_to_file.py add data 2026-04-26 22:30:52 +03:00
upload_server.py add data 2026-04-26 22:30:52 +03:00