Skip to content

Fixes #33023: evaluate neutral gray palette - #33150

Draft
shah-harshit wants to merge 5 commits into
mainfrom
ai-dashboard-neutral-gray-surfaces
Draft

Fixes #33023: evaluate neutral gray palette#33150
shah-harshit wants to merge 5 commits into
mainfrom
ai-dashboard-neutral-gray-surfaces

Conversation

@shah-harshit

Copy link
Copy Markdown
Contributor

Describe your changes:

Fixes #33023

Updates the shared gray primitives to the proposed neutral scale:

  • gray-25 through gray-950 now use the approved neutral values
  • the core fallback palette, generated aliases, token references, and color handbook stay synchronized
  • dark card/divider edges use an 8% white alpha so adjacent dark surfaces remain distinct without adding another solid gray layer

This PR intentionally contains only global palette and token changes. Home, AI Analytics, sidebar, card, icon, and interaction styling live in open-metadata/openmetadata-collate#6491 so OSS pages are not changed by this visual experiment.

Type of change:

  • Improvement

High-level design:

  • Light surfaces retain white cards over the neutral gray-25 page/canvas.
  • Dark surfaces use gray-950 for the page, gray-900 for canvas/header/sidebar, gray-800 for cards, and gray-700 for raised surfaces.
  • Semantic page treatments remain Collate-scoped while consuming these shared primitives.
  • Custom gray-725 and gray-750 values remain unchanged because they are outside the proposed scale and have existing targeted uses.

Tests:

  • The generated token files were refreshed after the palette update.
  • Local test, lint, build, and runtime checks were not rerun for the latest revision at request; this draft is intended for visual evaluation with the dependent Collate PR.
  • No backend or ingestion behavior changes.

UI screen recording / screenshots:

Visual validation is covered by open-metadata/openmetadata-collate#6491 on:

  • / in light and dark mode
  • /ai-dashboards in light and dark mode

Checklist:

@shah-harshit shah-harshit added UI UI specific issues safe to test Add this label to run secure Github workflows on PRs skip-pr-checks Bypass PR metadata validation check labels Sep 10, 2026
@shah-harshit shah-harshit self-assigned this Sep 10, 2026
| `tw:border-tertiary` | `--color-border-tertiary` | `#f5f5f5` (gray-100) | `#22262f` | Very subtle dividers |
| `tw:border-primary` | `--color-border-primary` | `#bfbfbf` (gray-300) | `#2e2e2e` (gray-700) | Default card, input, and divider borders |
| `tw:border-secondary` | `--color-border-secondary` | `#d9d9d9` (gray-200) | `#222222` (gray-800) | Subtle borders, section separators |
| `tw:border-secondary_alt` | `--color-border-secondary_alt` | `rgba(0,0,0,0.08)` | `#222222` | Alpha-transparent borders |

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Quality: Color handbook lists stale dark value for border-secondary_alt

This PR changes --color-border-secondary_alt in dark mode to rgb(255 255 255 / 0.08) (globals.css:1159, and called out in the PR summary as the intended 8% white-alpha edge), but the color handbook still documents its Dark value as the solid #222222. The handbook row was touched in this diff yet the Dark column wasn't updated, so it now contradicts the actual token and undermines the PR's claim that the handbook stays synchronized. Update the Dark cell to rgba(255,255,255,0.08).

Was this helpful? React with 👍 / 👎

200: '#D9D9D9',
300: '#BFBFBF',
400: '#A0A0A0',
500: '#808080',

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Quality: Neutral gray-500 lowers muted/placeholder text contrast on white

gray-500 moves from #717680 (~4.6:1 on white) to #808080 (~3.9:1 on white). Tokens that map to gray-500 on light surfaces — text-quaternary, text-placeholder, text-disabled (colors.md:113-115) — now fall below the WCAG AA 4.5:1 threshold for normal text. Since this is a designer-driven palette experiment, confirm the muted/placeholder contrast is acceptable or nudge gray-500 slightly darker before this leaves draft.

Was this helpful? React with 👍 / 👎

@gitar-bot

gitar-bot Bot commented Sep 10, 2026

Copy link
Copy Markdown
Code Review 👍 Approved with suggestions 0 resolved / 2 findings

Neutral gray palette update aligns the shared color scale to proposed values with synchronized global tokens and handbook. Two minor items to address: the color handbook's Dark value for border-secondary_alt still lists #222222 instead of the new rgba(255,255,255,0.08), and the new gray-500 (#808080) lowers muted/placeholder text contrast to 3.9:1 on white, falling below WCAG AA 4.5:1 — confirm this is acceptable for the design experiment or nudge gray-500 slightly darker.

💡 Quality: Color handbook lists stale dark value for border-secondary_alt

📄 openmetadata-ui/src/main/resources/ui/docs/colors.md:170 📄 openmetadata-ui-core-components/src/main/resources/ui/src/styles/globals.css:1159

This PR changes --color-border-secondary_alt in dark mode to rgb(255 255 255 / 0.08) (globals.css:1159, and called out in the PR summary as the intended 8% white-alpha edge), but the color handbook still documents its Dark value as the solid #222222. The handbook row was touched in this diff yet the Dark column wasn't updated, so it now contradicts the actual token and undermines the PR's claim that the handbook stays synchronized. Update the Dark cell to rgba(255,255,255,0.08).

💡 Quality: Neutral gray-500 lowers muted/placeholder text contrast on white

📄 openmetadata-ui-core-components/src/main/resources/ui/src/colors/defaultColors.ts:48 📄 openmetadata-ui/src/main/resources/ui/docs/colors.md:113-115

gray-500 moves from #717680 (~4.6:1 on white) to #808080 (~3.9:1 on white). Tokens that map to gray-500 on light surfaces — text-quaternary, text-placeholder, text-disabled (colors.md:113-115) — now fall below the WCAG AA 4.5:1 threshold for normal text. Since this is a designer-driven palette experiment, confirm the muted/placeholder contrast is acceptable or nudge gray-500 slightly darker before this leaves draft.

🤖 Prompt for agents
Code Review: Neutral gray palette update aligns the shared color scale to proposed values with synchronized global tokens and handbook. Two minor items to address: the color handbook's Dark value for `border-secondary_alt` still lists `#222222` instead of the new `rgba(255,255,255,0.08)`, and the new gray-500 (`#808080`) lowers muted/placeholder text contrast to 3.9:1 on white, falling below WCAG AA 4.5:1 — confirm this is acceptable for the design experiment or nudge gray-500 slightly darker.

1. 💡 Quality: Color handbook lists stale dark value for border-secondary_alt
   Files: openmetadata-ui/src/main/resources/ui/docs/colors.md:170, openmetadata-ui-core-components/src/main/resources/ui/src/styles/globals.css:1159

   This PR changes `--color-border-secondary_alt` in dark mode to `rgb(255 255 255 / 0.08)` (globals.css:1159, and called out in the PR summary as the intended 8% white-alpha edge), but the color handbook still documents its Dark value as the solid `#222222`. The handbook row was touched in this diff yet the Dark column wasn't updated, so it now contradicts the actual token and undermines the PR's claim that the handbook stays synchronized. Update the Dark cell to `rgba(255,255,255,0.08)`.

2. 💡 Quality: Neutral gray-500 lowers muted/placeholder text contrast on white
   Files: openmetadata-ui-core-components/src/main/resources/ui/src/colors/defaultColors.ts:48, openmetadata-ui/src/main/resources/ui/docs/colors.md:113-115

   gray-500 moves from `#717680` (~4.6:1 on white) to `#808080` (~3.9:1 on white). Tokens that map to gray-500 on light surfaces — `text-quaternary`, `text-placeholder`, `text-disabled` (colors.md:113-115) — now fall below the WCAG AA 4.5:1 threshold for normal text. Since this is a designer-driven palette experiment, confirm the muted/placeholder contrast is acceptable or nudge gray-500 slightly darker before this leaves draft.

Options

Display: compact → Counting what did not apply, without listing it.

Comment with these commands to change the behavior for this request:

Compact
gitar display:verbose         

Was this helpful? React with 👍 / 👎 | Powered by Gitar — free for open source

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

safe to test Add this label to run secure Github workflows on PRs skip-pr-checks Bypass PR metadata validation check UI UI specific issues

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Evaluate updated neutral gray palette in light and dark mode

1 participant