-- 106_scrape_schedules_seed_yandex_newbuilding_sweep.sql
-- Seed row для Yandex newbuilding sweep (#974).
--
-- !!! DORMANT BY DESIGN !!! enabled = false.
--   Sweep обращается к Yandex Realty через tradein-browser (camoufox).
--   Засеян ВЫКЛЮЧЕННЫМ — включается оператором вручную:
--     UPDATE scrape_schedules SET enabled = true
--     WHERE source = 'yandex_newbuilding_sweep';
--   Зеркалит cian_city_sweep (103, тоже enabled = false, dormant).
--
-- default_params:
--   limit             — дома за один прогон (старт консервативно 5).
--   request_delay_sec — пауза между ЖК (поверх browser wait).
--   city              — город для Yandex Realty URL (ekaterinburg).
--
-- ЗАВИСИМОСТИ: 052_scrape_schedules.sql (таблица + UNIQUE(source)).
-- Idempotent: ON CONFLICT (source) DO NOTHING — безопасно запускать повторно.
--
-- yandex_newbuilding_sweep — окно 02:00-05:00 UTC (05:00-08:00 МСК).

BEGIN;

INSERT INTO scrape_schedules (
    source,
    enabled,
    window_start_hour,
    window_end_hour,
    next_run_at,
    default_params
)
VALUES
(
    'yandex_newbuilding_sweep',
    false,                                       -- DORMANT (#974) — enable manually
    2,
    5,
    ((CURRENT_DATE + INTERVAL '1 day') + make_interval(hours => 2)) AT TIME ZONE 'UTC',
    '{"limit": 5, "request_delay_sec": 8, "city": "ekaterinburg"}'::jsonb
)
ON CONFLICT (source) DO NOTHING;

COMMENT ON TABLE scrape_schedules IS
    'In-app scheduler config (заменяет cron-script setup). '
    'Sources: avito_city_sweep, yandex_city_sweep (dormant, #561), '
    'cian_history_backfill, rosreestr_dkp_import, listing_source_snapshot (#570), '
    'asking_to_sold_ratio_refresh (#648), refresh_search_matview (#769), '
    'yandex_address_backfill (#855, EKB pilot), '
    'sber_index_pull (#887, monthly СберИндекс city-level price index), '
    'rosreestr_quarter_poll (#888, monthly Rosreestr new-quarter availability check), '
    'cian_city_sweep (dormant, #973), '
    'yandex_newbuilding_sweep (dormant, #974).';

COMMIT;
