Skip to content

Restore graph task and group coloring via Chakra palette tokens#68760

Draft
pierrejeambrun wants to merge 1 commit into
apache:mainfrom
astronomer:restore-task-ui-color-chakra
Draft

Restore graph task and group coloring via Chakra palette tokens#68760
pierrejeambrun wants to merge 1 commit into
apache:mainfrom
astronomer:restore-task-ui-color-chakra

Conversation

@pierrejeambrun

Copy link
Copy Markdown
Member

Custom operator and TaskGroup colors were dropped in Airflow 3 — the ui_color / ui_fgcolor attributes were kept on operators and task groups but the new UI ignored them. This reintroduces the coloring in a way that fits the new opinionated light/dark theming.

The value must now be a Chakra palette token (e.g. blue.500, purple.600, or any token a deployment adds through custom theming). A token resolves through a theme-controlled CSS variable, so it stays legible in both light and dark mode — addressing the dark-mode / accessibility concerns that drove the original removal. The graph paints the node fill from ui_color and the operator label from ui_fgcolor (as in Airflow 2.x), while the border keeps showing run state.

Legacy hex / CSS-name values (e.g. #e8b7e4) can't adapt to the theme, so they are ignored by the graph and emit a parse-time warning for user-authored operators and task groups (built-in operators and providers stay silent).

closes: #54474

Graph (light)
  • screenshot: graph-light
Graph (dark)
  • screenshot: graph-dark

Was generative AI tooling used to co-author this PR?
  • Yes — Claude Code (Opus 4.8)

Generated-by: Claude Code (Opus 4.8) following the guidelines

@boring-cyborg boring-cyborg Bot added area:API Airflow's REST/HTTP API area:task-sdk area:UI Related to UI/UX. For Frontend Developers. labels Jun 19, 2026
Custom operator and TaskGroup colors disappeared in Airflow 3: the
ui_color/ui_fgcolor attributes were kept but the new UI ignored them, so
teams that relied on color to parse large graphs at a glance lost that
signal (see the demand on the linked issue).

Bring the coloring back in a way that fits the new opinionated theming:
the value must be a Chakra palette token (e.g. blue.500), which resolves
through a theme-controlled CSS variable and therefore stays legible in
both light and dark mode and under custom themes -- the dark-mode and
accessibility concerns that drove the original removal. The graph paints
the node fill from ui_color and the operator label from ui_fgcolor, as in
Airflow 2.x, while the border keeps showing run state. Legacy hex/named
values can no longer adapt to the theme, so they are ignored by the graph
and emit a warning for user-authored operators and task groups.
@pierrejeambrun pierrejeambrun force-pushed the restore-task-ui-color-chakra branch from 48c8d37 to 25bfaca Compare June 19, 2026 15:56
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:task-sdk area:UI Related to UI/UX. For Frontend Developers.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ui_color is ignored for Taskgroup and custom operators in airflow 3.0.4

1 participant