ryanahamilton opened a new pull request, #71957: URL: https://github.com/apache/airflow/pull/71957
Identifying the current Dag and acting on it was spread across three controls that did not acknowledge each other: a breadcrumb that named the Dag, a separate search button beside it that replaced it wholesale, and a header card whose pause toggle surfaced only on deeper pages. This reworks that chrome so naming and switching happen in one place. **Breadcrumb.** The Dag level is now a split control — the name navigates to the Dag, the chevron opens the Dag search inline (the `mod+k` shortcut moved here from the standalone search button, which is removed). Every clickable level is a ghost button on a shared muted bar, divided by chevron cutouts that the hover fill follows. The pause toggle no longer lives in a navigation element; it sits with the other Dag actions in the header. Chakra's breadcrumb primitive could not express a split control or a surface shared across levels, so the Dag and Asset breadcrumbs are now built from shared parts in `components/Breadcrumb/` and the wrapper is retired. **Header cards** get a muted surface, a type caption above the title, and consistently styled action buttons across all six header pages. Two bug fixes fell out of the work: - A task inside a mapped task group reports `is_mapped: false`, so the breadcrumb's task level was not linkable on `/mapped/:mapIndex` routes and the task-instance lookup behind its state badge always 404'd. The route is now the signal instead of `task.is_mapped`. - The note preview's new row-level click handler also fired for clicks inside the modal it opened (React propagates events out of a portal along the component tree), which reset the draft and reopened the editor over the save; and it swallowed clicks on links in the preview. Tests added for the breadcrumb (there were none) and for both bug fixes. --- ##### Was generative AI tooling used to co-author this PR? - [X] Yes — Claude Code (Opus 5) Generated-by: Claude Code (Opus 5) following [the guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#gen-ai-assisted-contributions) -- 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]
