"""
Scheduler job definitions.

Each entry in JOBS describes one recurring task:

  id              — unique job identifier (used in logs and APScheduler internals)
  func            — dotted import path to the coroutine/callable: "module.path:function_name"
  days            — list of active weekday abbreviations (lowercase):
                    "mon" | "tue" | "wed" | "thu" | "fri" | "sat" | "sun"
  start_time      — window open  (HH:MM, 24-hour, local timezone from TIMEZONE env var)
  end_time        — window close (HH:MM, exclusive — job will NOT run at exactly end_time)
  interval_second — how often the job fires (in seconds); the time-window guard
                    silently discards executions that fall outside the active window

Add, remove, or adjust entries freely. The runner reads this list at startup.
"""

from __future__ import annotations

JOBS: list[dict] = [
    {
        "id": "service_1",
        "func": "app.services.service_1:run",
        "days": ["sun", "mon", "tue", "wed", "thu", "fri"],
        "start_time": "09:58",
        "end_time": "16:05",
        "interval_second": 15,
    },
    # {
    #     "id": "service_2",
    #     "func": "app.services.service_2:run",
    #     "days": ["sun", "mon", "tue", "wed", "thu"],
    #     "start_time": "10:00",
    #     "end_time": "16:00",
    #     "interval_second": 10,
    # },
]
