youngduck98 commented on code in PR #75608:
URL: https://github.com/apache/airflow/pull/75608#discussion_r4380695721
##########
airflow-core/src/airflow/ui/src/pages/Run/Header.tsx:
##########
@@ -60,8 +61,10 @@ export const Header = ({ dagRun }: { readonly dagRun:
DAGRunResponse }) => {
const dagId = dagRun.dag_id;
const dagRunId = dagRun.dag_run_id;
- const { data: alertData } = useDeadlinesServiceGetDagDeadlineAlerts({ dagId
});
- const hasDeadlineAlerts = (alertData?.total_entries ?? 0) > 0;
+ const { data: alertData } = useDeadlinesServiceGetDagDeadlineAlerts({ dagId,
dagRunId, limit: 100 });
+ const hasDeadlineAlerts = (alertData?.deadline_alerts ?? []).some((alert) =>
+ isDeadlineAlertApplicable(alert, dagRun.run_type),
+ );
Review Comment:
The run header and its modal show all stored deadline records, regardless of
the run's current type. Filtering historical records by the current run type
could hide a stored missed deadline and show Met based only on another
applicable alert. These records describe the existing deadlines; they are not a
new deadline evaluation of a reprocessed backfill.
Only when there are no stored records do we check the alert definitions from
the run's creation version against its current run type: an applicable alert
allows the existing Met display, while no applicable alerts means the Deadline
field is hidden. Changing the filter does not delete stored records.
---
Drafted-by: Codex (GPT-6) (no human review before posting)
##########
airflow-core/src/airflow/ui/src/pages/Run/Header.tsx:
##########
@@ -60,8 +61,16 @@ export const Header = ({ dagRun }: { readonly dagRun:
DAGRunResponse }) => {
const dagId = dagRun.dag_id;
const dagRunId = dagRun.dag_run_id;
- const { data: alertData } = useDeadlinesServiceGetDagDeadlineAlerts({ dagId
});
- const hasDeadlineAlerts = (alertData?.total_entries ?? 0) > 0;
+ const { data: alertData } = useDeadlinesServiceGetDagDeadlineAlerts({ dagId,
dagRunId, limit: 100 });
Review Comment:
Passing dagRunId retrieves the alert definitions from the Dag version that
created this run, rather than the latest Dag version. The run view uses those
definitions for alert metadata and, when there are no stored deadline records,
to check applicability against the run's current type. Stored deadline records
remain visible regardless of that applicability check.
---
Drafted-by: Codex (GPT-6) (no human review before posting)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]