Fix DAGs list page Last Run/Next Run going stale after runs complete - #70667
Open
bramhanandlingala wants to merge 1 commit into
Open
Fix DAGs list page Last Run/Next Run going stale after runs complete#70667bramhanandlingala wants to merge 1 commit into
bramhanandlingala wants to merge 1 commit into
Conversation
bramhanandlingala
requested review from
bbovenzi,
choo121600,
guan404ming,
pierrejeambrun,
ryanahamilton,
shubhamraj-git and
vatsrahul1001
as code owners
July 29, 2026 08:43
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The DAGs list page (
/dags) stops auto-refreshing once none of the visibleDAGs has a run in a pending state. Since that's the normal resting
condition, "Last Run" and "Next Run" (and the Recent Tasks counts) go stale
and never update again until a manual page reload.
Root cause
useDagsanduseDagRunStateCountseach setrefetchInterval: falsewhenever no DAG on the current page is mid-run, permanently killing
polling. Every other page in the UI instead uses
useAutoRefresh({ checkPendingRuns: true }), which checks pending runsglobally and scales the interval back instead of disabling it.
Fix
Route both hooks through the same
checkPendingRuns: truemechanismalready used elsewhere, instead of their own divergent, page-local gate.
No visual/markup changes — purely a polling-behavior fix.
closes: #70663
Was generative AI tooling used to co-author this PR?
Generated-by: Claude following the guidelines