|
All checks were successful
CI / changes (push) Successful in 6s
CI / changes (pull_request) Successful in 7s
CI / frontend-tests (pull_request) Has been skipped
CI / backend-tests (pull_request) Successful in 6m27s
Deploy / build-frontend (push) Has been skipped
CI / frontend-tests (push) Has been skipped
CI / backend-tests (push) Successful in 6m29s
Deploy / changes (push) Successful in 6s
Deploy / build-backend (push) Successful in 1m43s
Deploy / build-worker (push) Successful in 3m3s
Deploy / deploy (push) Successful in 1m15s
Closes the last #946 gap (СМР). Fetches «Индексы цен производителей на строительную продукцию по РФ» from the OPEN Rosstat xlsx (rosstat.gov.ru/storage/mediabank/Invest_ind_stroitel_MM-YYYY.xlsx), parses the monthly «к предыдущему месяцу» section → macro_indicator (indicator_type='construction_price_index', region='rf', monthly, %). The reCAPTCHA-gated fedstat dataGrid.do path is DELIBERATELY NOT used — the open Rosstat source needs no captcha. EMISS id=31108 documented as a prod-only SDMX alternative (not wired). URL is date-derived with bounded look-back (filename changes monthly; _fetch_construction_latest walks current month back to 6, first 200 wins; year-boundary handled, exhaustion raises, 404 breaks fast — no hang). Wired into rosstat_macro_sync with per-source try/except (can't break demography/income) + SAVEPOINT-per-row. None-not-0 on blank months. 33 tests (incl look-back + year-boundary + graceful), ruff clean. Note: no construction-cost channel in macro_coefficient yet (demand-side only) — series is ingested/available for future cost-side use + display. Refs #946 |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| cbr_macro.py | ||
| documents.py | ||
| domrf_catalog.py | ||
| domrf_catalog_object.py | ||
| domrf_kn.py | ||
| ekb_geoportal_client.py | ||
| ekb_krt_registry.py | ||
| ekb_ppt_tep_parser.py | ||
| ekburg_permits.py | ||
| flat_plans.py | ||
| gisogd_so_client.py | ||
| izyatie_client.py | ||
| izyatie_ocr.py | ||
| nspd_client.py | ||
| nspd_denorm.py | ||
| nspd_lite.py | ||
| obj_checks.py | ||
| objective.py | ||
| okn_egrkn_client.py | ||
| page_reservation_parser.py | ||
| pravo_gov66_client.py | ||
| rosstat_emiss.py | ||
| stealth.py | ||