Skip to content

fix(dashboard): mute the Group By display control loading spinner - #42879

Draft
sadpandajoe wants to merge 2 commits into
masterfrom
fix-group-by-display-control-spinner-muted
Draft

fix(dashboard): mute the Group By display control loading spinner#42879
sadpandajoe wants to merge 2 commits into
masterfrom
fix-group-by-display-control-spinner-muted

Conversation

@sadpandajoe

Copy link
Copy Markdown
Member

SUMMARY

The Group By display control in the dashboard filter bar renders its column-loading spinner with the default <Loading position="inline" />, i.e. full opacity and medium (70px) size. For an inline, secondary loading affordance this is visually heavy — the spinner should use the light grey/muted style, matching the muted inline variant already used by FilterValue.tsx.

This change renders the spinner with the small, muted Loading variant (size="s" muted → 40px, 0.25 opacity) and adds a regression test that pins the card in its column-loading state and asserts the spinner is rendered small and muted.

BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

Before: while column options load, the control shows the default spinner — full opacity, 70px — which dominates the filter card.
After: the same loading state shows a 40px spinner at 0.25 opacity, reading as a light grey inline affordance.
(Before/after recordings to follow.)

TESTING INSTRUCTIONS

  1. Open a dashboard with a Group By (dynamic group by) display control in the filter bar.
  2. Trigger the column-options load for the control (e.g. first render with a configured dataset).
  3. Observe the inline loading spinner under the control: it should render small and muted (light grey) instead of the full-opacity medium spinner.

Automated: npx jest src/dashboard/components/nativeFilters/FilterBar/FilterControls/GroupByFilterCard.test.tsx — the new test fails on master (spinner opacity 1, width 70px) and passes with this change (opacity 0.25, width 40px).

ADDITIONAL INFORMATION

  • Has associated issue:
  • Required feature flags:
  • Changes UI
  • Includes DB Migration (follow approval process in SIP-59)
    • Migration is atomic, supports rollback & is backwards-compatible
    • Confirm DB migration upgrade and downgrade tested
    • Runs DB migration for a hive metastore
    • Introduces new feature or API
  • Removes existing feature or API

The Group By display control in the dashboard filter bar rendered its
column-loading spinner at full opacity and medium size, which is visually
heavy for an inline secondary loading state. Render it with the small,
muted Loading variant (40px, 0.25 opacity) to match the light-grey style
expected for inline loading affordances.

Adds a regression test that pins the card in its column-loading state and
asserts the spinner is rendered small and muted.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@codecov

codecov Bot commented Aug 7, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 73.63%. Comparing base (fe06ebe) to head (d324c98).
⚠️ Report is 9 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master   #42879      +/-   ##
==========================================
+ Coverage   66.37%   73.63%   +7.26%     
==========================================
  Files        2857     1929     -928     
  Lines      161048    83547   -77501     
  Branches    37046    27236    -9810     
==========================================
- Hits       106892    61522   -45370     
+ Misses      52141    22025   -30116     
+ Partials     2015        0    -2015     
Flag Coverage Δ
hive ?
javascript 73.27% <ø> (+0.07%) ⬆️
mysql ?
postgres ?
presto ?
sqlite ?

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@sadpandajoe sadpandajoe added the 🎪 ⚡ showtime-trigger-start Create new ephemeral environment for this PR label Aug 7, 2026
@github-actions github-actions Bot added 🎪 d324c98 🚦 building Environment d324c98 status: building 🎪 d324c98 📅 2026-08-07T16-13 Environment d324c98 created at 2026-08-07T16-13 🎪 d324c98 🤡 sadpandajoe Environment d324c98 requested by sadpandajoe 🎪 ⌛ 48h Environment expires after 48 hours (default) and removed 🎪 ⚡ showtime-trigger-start Create new ephemeral environment for this PR labels Aug 7, 2026
@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

🎪 Showtime is building environment on GHA for d324c98

@github-actions github-actions Bot added 🎪 d324c98 🚦 deploying Environment d324c98 status: deploying 🎪 d324c98 🚦 running Environment d324c98 status: running 🎪 🎯 d324c98 Active environment pointer - d324c98 is receiving traffic 🎪 d324c98 🌐 16.148.59.106:8080 Environment d324c98 URL: http://16.148.59.106:8080 (click to visit) and removed 🎪 d324c98 🚦 building Environment d324c98 status: building 🎪 d324c98 🚦 deploying Environment d324c98 status: deploying 🎪 d324c98 🚦 running Environment d324c98 status: running 🎪 🎯 d324c98 Active environment pointer - d324c98 is receiving traffic labels Aug 7, 2026
@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

🎪 Showtime deployed environment on GHA for d324c98

Environment: http://16.148.59.106:8080 (admin/admin)
Lifetime: 48h auto-cleanup
Updates: New commits create fresh environments automatically

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

Labels

🎪 d324c98 🚦 running Environment d324c98 status: running 🎪 d324c98 🤡 sadpandajoe Environment d324c98 requested by sadpandajoe 🎪 d324c98 🌐 16.148.59.106:8080 Environment d324c98 URL: http://16.148.59.106:8080 (click to visit) 🎪 d324c98 📅 2026-08-07T16-13 Environment d324c98 created at 2026-08-07T16-13 review:draft size/M 🎪 ⌛ 48h Environment expires after 48 hours (default)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant