Skip to content

fix(tags): fix Bulk tag modal dropdown clipping and stale tag cache#39210

Merged
mistercrunch merged 4 commits intomasterfrom
fix-add-tags-modal
Apr 8, 2026
Merged

fix(tags): fix Bulk tag modal dropdown clipping and stale tag cache#39210
mistercrunch merged 4 commits intomasterfrom
fix-add-tags-modal

Conversation

@mistercrunch
Copy link
Copy Markdown
Member

@mistercrunch mistercrunch commented Apr 8, 2026

SUMMARY

Three fixes for the "Bulk tag" modal (used when bulk-selecting charts/dashboards and applying tags):

  1. Dropdown clipping — The tag dropdown was being clipped by the modal body's overflow: auto. Added getPopupContainer={() => document.body} to portal the dropdown above the modal, which is the standard antd pattern for selects inside modals.

  2. Stale tag cacheloadTags used a cachedSupersetGet backed by an in-memory Map with no invalidation, so newly created tags never appeared in the dropdown until page reload. Removed the cache entirely — tag lookups are cheap paginated API calls.

  3. Label capitalization — Changed t('tags')t('Tags') for the form label.

BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

After

Screenshot 2026-04-08 at 2 26 12 PM

TESTING INSTRUCTIONS

  1. Enable the TAGGING_SYSTEM feature flag
  2. Navigate to Charts list
  3. Select multiple charts using the checkboxes
  4. Click the "Bulk tag" action
  5. Verify the tag dropdown opens fully without being clipped by the modal
  6. Create a new tag (via the Tags page), return to Charts, open Bulk tag again — verify the new tag appears in the dropdown without needing a page reload
  7. Verify the form label reads "Tags" (capitalized)

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
    • Runtime estimates and downtime expectations provided
  • Introduces new feature or API
  • Removes existing feature or API

🤖 Generated with Claude Code

The Bulk tag modal was too small, making the tag dropdown cramped and
barely usable. Add min-height to the modal container so the async
select dropdown has adequate space to render.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@bito-code-review
Copy link
Copy Markdown
Contributor

bito-code-review Bot commented Apr 8, 2026

Code Review Agent Run #5a120a

Actionable Suggestions - 0
Review Details
  • Files reviewed - 1 · Commit Range: 6e101e6..6e101e6
    • superset-frontend/src/features/tags/BulkTagModal.tsx
  • Files skipped - 0
  • Tools
    • Whispers (Secret Scanner) - ✔︎ Successful
    • Detect-secrets (Secret Scanner) - ✔︎ Successful

Bito Usage Guide

Commands

Type the following command in the pull request comment and save the comment.

  • /review - Manually triggers a full AI review.

  • /pause - Pauses automatic reviews on this pull request.

  • /resume - Resumes automatic reviews.

  • /resolve - Marks all Bito-posted review comments as resolved.

  • /abort - Cancels all in-progress reviews.

Refer to the documentation for additional commands.

Configuration

This repository uses Superset You can customize the agent settings here or contact your Bito workspace admin at evan@preset.io.

Documentation & Help

AI Code Review powered by Bito Logo

@dosubot dosubot Bot added the change:frontend Requires changing the frontend label Apr 8, 2026
mistercrunch and others added 2 commits April 8, 2026 20:50
200px was not enough — antd Select dropdown renders at ~256px list
height plus padding, so 340px ensures the dropdown is fully visible
without clipping inside the modal body overflow.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Three fixes for the Bulk tag modal:

1. Portal the tag dropdown to document.body via getPopupContainer so it
   renders above the modal instead of being clipped by the modal body's
   overflow:auto — removes the min-height workaround.

2. Remove the no-invalidation cache (cachedSupersetGet) from loadTags
   so newly created tags appear immediately in the dropdown.

3. Capitalize the "Tags" form label.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@pull-request-size pull-request-size Bot added size/S and removed size/XS labels Apr 8, 2026
@mistercrunch mistercrunch changed the title fix(tags): increase Bulk tag modal body size for usable tag dropdown fix(tags): fix Bulk tag modal dropdown clipping and stale tag cache Apr 8, 2026
Same dropdown clipping fix as BulkTagModal — the three AsyncSelect
components (dashboards, charts, saved queries) in TagModal also render
their popups inside the modal body's overflow container. Portal them
to document.body so dropdowns are never clipped.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@bito-code-review
Copy link
Copy Markdown
Contributor

bito-code-review Bot commented Apr 8, 2026

Code Review Agent Run #1d5174

Actionable Suggestions - 0
Review Details
  • Files reviewed - 3 · Commit Range: 6e101e6..16bd5b3
    • superset-frontend/src/features/tags/BulkTagModal.tsx
    • superset-frontend/src/components/Tag/utils.tsx
    • superset-frontend/src/features/tags/TagModal.tsx
  • Files skipped - 0
  • Tools
    • Whispers (Secret Scanner) - ✔︎ Successful
    • Detect-secrets (Secret Scanner) - ✔︎ Successful

Bito Usage Guide

Commands

Type the following command in the pull request comment and save the comment.

  • /review - Manually triggers a full AI review.

  • /pause - Pauses automatic reviews on this pull request.

  • /resume - Resumes automatic reviews.

  • /resolve - Marks all Bito-posted review comments as resolved.

  • /abort - Cancels all in-progress reviews.

Refer to the documentation for additional commands.

Configuration

This repository uses Superset You can customize the agent settings here or contact your Bito workspace admin at evan@preset.io.

Documentation & Help

AI Code Review powered by Bito Logo

@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 8, 2026

Codecov Report

❌ Patch coverage is 40.00000% with 3 lines in your changes missing coverage. Please review.
✅ Project coverage is 64.46%. Comparing base (d63308c) to head (16bd5b3).
⚠️ Report is 4 commits behind head on master.

Files with missing lines Patch % Lines
superset-frontend/src/features/tags/TagModal.tsx 0.00% 3 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master   #39210      +/-   ##
==========================================
- Coverage   64.46%   64.46%   -0.01%     
==========================================
  Files        2541     2541              
  Lines      131775   131776       +1     
  Branches    30569    30568       -1     
==========================================
- Hits        84950    84948       -2     
- Misses      45359    45362       +3     
  Partials     1466     1466              
Flag Coverage Δ
javascript 66.07% <40.00%> (-0.01%) ⬇️

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

☔ View full report in Codecov by Sentry.
📢 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.

@mistercrunch mistercrunch merged commit d915e4f into master Apr 8, 2026
86 of 87 checks passed
@mistercrunch mistercrunch deleted the fix-add-tags-modal branch April 8, 2026 23:28
michael-s-molina pushed a commit that referenced this pull request Apr 13, 2026
…39210)

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
(cherry picked from commit d915e4f)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

change:frontend Requires changing the frontend preset-io size/S

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants