Display Deadlines in Dashboard and Browser#64878
Display Deadlines in Dashboard and Browser#64878imrichardwu wants to merge 6 commits intoapache:mainfrom
Conversation
|
Let us know when this is ready for review. (take your time, fix the CI, thorough local tests, etc..., there is no hurry) |
bbovenzi
left a comment
There was a problem hiding this comment.
Let's remove the Dashboard changes for now since they will really depend on the UX in your other PR and we can just focus on the browse page.
| "deadlines": { | ||
| "deadlines": "Deadlines", | ||
| "pending": "Pending", | ||
| "recentlyMissed": "Recently Missed" | ||
| }, |
There was a problem hiding this comment.
We are reimplementing these translations a lot here and in your other PR. Let's try to consolidate them as much as possible.
There was a problem hiding this comment.
Sounds good. I will create another pr and move the Python and other related stuff to it so these 2 pr focus only on UI
| const orderBy = sort ? [`${sort.desc ? "-" : ""}${sort.id}`] : ["deadline_time"]; | ||
|
|
||
| const filteredDagId = searchParams.get(SearchParamsKeys.DAG_ID); | ||
| const filteredMissed = searchParams.get(SearchParamsKeys.MISSED); |
There was a problem hiding this comment.
You can look at our other time range filters to add filters for deadlineTime Lte and Gte
|
|
||
| const missedFilter = filteredMissed === "true" ? true : filteredMissed === "false" ? false : undefined; | ||
|
|
||
| const { data, error, isFetching, isLoading } = useDeadlinesServiceGetDeadlines({ |
There was a problem hiding this comment.
I would ideally like to include the alert reference and the dag run's end_date plus state to give much more context here, but that can be a custom UI endpoint later.
| export const Deadlines = () => { | ||
| const { t: translate } = useTranslation("dashboard"); | ||
| const refetchInterval = useAutoRefresh({ checkPendingRuns: true }); | ||
| const now = dayjs().toISOString(); |
There was a problem hiding this comment.
With the refetchInterval, we will calculate a new now and last24h constantly.
It would be better to move this under the "History" section and use the start and end date provided just like you did with the Overview page. But again, we don't want to do any of this yet.
Co-authored-by: Brent Bovenzi <brent.bovenzi@gmail.com>
Sounds good, thank you for your patience. This pr might take some time as I will work on my other pr (have a lot of feedback to address), and it's the final exam month for me :(, so this pr might actually not be updated until around the end of April. |
Add a global Deadlines view that displays all pending deadlines where deadline_time is in the future, as well as recently missed deadlines from the last 24 hours across all DAG runs, with clickable links to the corresponding DAG and DAG run for sorting and filtering. The dashboard shows the 5 most recent, and the user can view more in the browser section.




Related to #50501 (comment)
Was generative AI tooling used to co-author this PR?
Claude code for code review and bug fix.
{pr_number}.significant.rst, in airflow-core/newsfragments. You can add this file in a follow-up commit after the PR is created so you know the PR number.