diff --git a/frontend/src/lib/api-types.ts b/frontend/src/lib/api-types.ts index ba4931ac..79fa819e 100644 --- a/frontend/src/lib/api-types.ts +++ b/frontend/src/lib/api-types.ts @@ -1227,6 +1227,31 @@ export interface paths { patch?: never; trace?: never; }; + "/api/v1/admin/scrape/zone-regulations/backfill": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** + * Trigger Zone Regulations Backfill + * @description Backfill кэша ПЗЗ-регламента ВСЕХ терзон ЕКБ → zone_regulation_cache (эпик #1881). + * + * Чтобы financial_estimate фаерил для большинства участков (max_far из кэша, без live-urbanCard + * в hot-пути). Идемпотентно: уже закэшированные зоны пропускаются, повторный запуск дёшев. + * + * estimate_minutes — груба: ~120 уникальных терзон ЕКБ × (rate_delay + ~2с live-urbanCard). + */ + post: operations["trigger_zone_regulations_backfill_api_v1_admin_scrape_zone_regulations_backfill_post"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; "/api/v1/admin/scrape/poi-sync": { parameters: { query?: never; @@ -4636,6 +4661,23 @@ export interface components { */ groups?: string[] | null; }; + /** + * TriggerZoneRegulationsBackfillRequest + * @description Параметры ручного backfill ПЗЗ-регламента терзон ЕКБ (эпик #1881). + */ + TriggerZoneRegulationsBackfillRequest: { + /** + * Limit + * @description Максимум уникальных незакэшированных зон к фетчу (None = все). Smoke-тест. + */ + limit?: number | null; + /** + * Rate Delay S + * @description Пауза (сек) между live-fetch'ами зон — вежливость к геопорталу. + * @default 1 + */ + rate_delay_s: number; + }; /** * UserScope * @description Возвращается /me — фронт может использовать allowed_paths для UI gating. @@ -6421,6 +6463,41 @@ export interface operations { }; }; }; + trigger_zone_regulations_backfill_api_v1_admin_scrape_zone_regulations_backfill_post: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody: { + content: { + "application/json": components["schemas"]["TriggerZoneRegulationsBackfillRequest"]; + }; + }; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": { + [key: string]: unknown; + }; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; trigger_poi_sync_api_v1_admin_scrape_poi_sync_post: { parameters: { query?: never;