gendesign/backend/app
lekss361 df5034fe29 feat(cadastre): per-category NSPD snapshot — Phase 1.5 (ZOUIT/ENK)
Switch base search_by_quarter from thematicSearchId=1 to thematic=1
(includes ZOUIT in features). Add optional category_id param that routes
ZOUIT (36940/469039/469040/469042) -> thematicSearchId=5,
ENK (39663) -> thematicSearchId=15.

Add Phase 1.5 in harvest_quarter: for each PER_CATEGORY_PROBE_CATS
category present in meta_counts (meta_total>0), run dedicated
per-category search call. Skips if category in GRID_WALK_CATS and
bbox is valid (grid-walk gives better coverage).

Curl-probe confirmed NSPD API caps at 20/category with no pagination;
categoryId param is server-ignored; thematic=1 strictly better than
thematicSearchId=1 (includes ZOUIT).

Closes part of #168 (ZOUIT/ENK coverage gap).
2026-05-15 16:48:59 +03:00
..
api fix(parcels): _parse_floors handle int (post-migration #169) (#176) 2026-05-15 15:08:16 +03:00
core refactor(admin): extract _check_token into shared AdminTokenAuth dep (#133) 2026-05-14 23:45:44 +03:00
models feat(jobs): centralized job_settings API + DB-driven beat schedule 2026-05-11 15:38:13 +03:00
schemas fix(cadastre): NSPD response parse — properties.category + top-level meta (#168) (#177) 2026-05-15 15:40:01 +03:00
scrapers feat(cadastre): per-category NSPD snapshot — Phase 1.5 (ZOUIT/ENK) 2026-05-15 16:48:59 +03:00
services feat(cadastre): per-category NSPD snapshot — Phase 1.5 (ZOUIT/ENK) 2026-05-15 16:48:59 +03:00
workers feat(cadastre): bulk_harvest worker + grid-walker + admin API (#168 PR3/5) (#171) 2026-05-15 13:31:32 +03:00
__init__.py init 2026-04-25 13:45:19 +03:00
main.py feat(cadastre): bulk_harvest worker + grid-walker + admin API (#168 PR3/5) (#171) 2026-05-15 13:31:32 +03:00