What this is really about is, "what should be the first run for a dag".

I think one way we might be able to solve this is to make `start_date`
optional.  And if you don't provide a start date, then your first run can
be the next "interval end".  *(if we add support for more cron-like
scheduling, i.e. running at start of interval, then we could say next
"interval start" for those timetables).*

Then if you provide a start date, the first run would be the latest
completed interval; and if you don't it will be the next one.

Perhaps a way to interpret this behavior as consistent would be, the start
date effectively dictates what date range is under the purview of the dag,
and the start date for the latest completed interval is within that date
range, and therefore it is a run that should be created.  But then if you
do not provide a start date, then when deploying, the start date should be
_now_ -- so then the start date of the latest completed interval would be
prior to the start date of the dag, and therefore should not be created.

Reply via email to