mirror of
https://github.com/MODSetter/SurfSense.git
synced 2026-05-31 19:45:15 +02:00
27 lines
757 B
Python
27 lines
757 B
Python
"""Build run inputs from a schedule fire."""
|
|
|
|
from __future__ import annotations
|
|
|
|
from datetime import datetime
|
|
from typing import Any
|
|
|
|
|
|
def schedule_runtime_inputs(
|
|
*,
|
|
fired_at: datetime,
|
|
scheduled_for: datetime,
|
|
previous_last_fired_at: datetime | None,
|
|
) -> dict[str, Any]:
|
|
"""Calendar context for a scheduled run.
|
|
|
|
- ``fired_at`` — actual fire time
|
|
- ``scheduled_for`` — cron-derived target time for this fire
|
|
- ``last_fired_at`` — previous fire time, or null on first fire
|
|
"""
|
|
return {
|
|
"fired_at": fired_at.isoformat(),
|
|
"scheduled_for": scheduled_for.isoformat(),
|
|
"last_fired_at": (
|
|
previous_last_fired_at.isoformat() if previous_last_fired_at else None
|
|
),
|
|
}
|