Skip to content

UI: Add timetable type filter to Dag list - #69728

Merged
bbovenzi merged 6 commits into
apache:mainfrom
shivaam:codex/airflow-investigate-issue-53738
Jul 29, 2026
Merged

UI: Add timetable type filter to Dag list#69728
bbovenzi merged 6 commits into
apache:mainfrom
shivaam:codex/airflow-investigate-issue-53738

Conversation

@shivaam

@shivaam shivaam commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Adds timetable type filtering to the Dag list UI.

The public API already supports filtering Dags by timetable_type, but the Dag list page uses the private /ui/dags endpoint. This wires the same filter through the private endpoint, generated UI client, and Dag list filters.

The timetable filter uses a discoverable, server-backed typeahead and supports selecting multiple timetable types with OR semantics. The timetable and tag controls use a small shared filter-select component so their chips, clearing, option handling, and styling stay consistent. Other compatible filters can migrate to this shared component incrementally, giving filter controls consistent behavior across Airflow UI pages without broadening this PR into an unrelated UI rewrite.

closes: #53738

Testing:

  • Focused backend timetable filter and type-list tests
  • Dag filter UI tests
  • ESLint and TypeScript
  • Production UI build
  • Real Airflow/Postgres UI verification with built-in and plugin timetables

image
Was generative AI tooling used to co-author this PR?
  • Yes: OpenAI Codex

Generated-by: OpenAI Codex following the guidelines

Comment thread airflow-core/src/airflow/api_fastapi/core_api/routes/ui/dags.py

@pierrejeambrun pierrejeambrun left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Any update here? It would be great to have this improvement!

@shivaam

shivaam commented Jul 24, 2026

Copy link
Copy Markdown
Contributor Author

Any update here? It would be great to have this improvement!

Hello! I will update the PR by tomorrow morning. Working on it today

@shivaam

shivaam commented Jul 24, 2026

Copy link
Copy Markdown
Contributor Author
f1.mov

Here is an example of how it will look like. If you agree with the design, I will move ahead with the implementation. I have fixed the favorites to the right as we resize the window so they dont move around on smaller screens

@shivaam
shivaam marked this pull request as ready for review July 24, 2026 17:44
@shivaam
shivaam force-pushed the codex/airflow-investigate-issue-53738 branch from 3a2493c to c5dacaf Compare July 25, 2026 04:15
@bbovenzi

Copy link
Copy Markdown
Contributor

If we are filtering by timetable then I think we should also show timetable with the schedule in the card and list. Can be a separate PR.

Comment thread airflow-core/newsfragments/69728.feature.rst Outdated
@bbovenzi

Copy link
Copy Markdown
Contributor

LGTM let's just rerun the autogenerated API docs. Its probably from my PR to shorten all of the string match descriptions.

shivaam added 6 commits July 28, 2026 23:46
Users could filter by timetable type through the public API, but the Dag list uses the private UI endpoint. This makes the same capability available from the page users actually use.
Keeping these text inputs on one implementation prevents their debounce, clearing, and URL synchronization behavior from drifting.
Dags can use built-in or plugin timetables whose persisted type names are not discoverable from free text alone. Exposing readable values lets users narrow large Dag lists without knowing the exact class path.
Allow selecting multiple timetable types with OR semantics and share the tag-style select presentation between tag and timetable filters.
@shivaam
shivaam force-pushed the codex/airflow-investigate-issue-53738 branch from 7aab91a to e108334 Compare July 29, 2026 06:51
@bbovenzi
bbovenzi merged commit f54c8ee into apache:main Jul 29, 2026
99 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:API Airflow's REST/HTTP API area:UI Related to UI/UX. For Frontend Developers. ready for maintainer review Set after triaging when all criteria pass.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Support for Filtering DAGs by Timetable Type

4 participants