GitHub user jaymasiwal created a discussion: Where should DataInterval 
invariants be enforced in Airflow?

Hi maintainers,

While working around timetables and scheduling, I ran into a design question
related to `DataInterval`.

Conceptually, `DataInterval` assumes two invariants:
- `start` and `end` are timezone-aware
- `end` is not earlier than `start`

Before attempting any changes, I wanted to clarify the intended design 
boundaries:

- Where are `DataInterval` invariants expected to be enforced today?
  - At object construction?
  - During timetable validation?
  - At DAG parsing or runtime boundaries?
- Is the current permissive behavior intentional (e.g. to support legacy runs,
  serialized DAGs, or external integrations)?

I’m not proposing a behavior change here — just trying to understand where
validation is expected to live so future docs or tests align with that intent.

Thanks for any guidance.


GitHub link: https://github.com/apache/airflow/discussions/59868

----
This is an automatically sent email for [email protected].
To unsubscribe, please send an email to: [email protected]

Reply via email to