Skip to content

fix(web): name the chat history settings trigger - #40246

Closed
lyzno1 wants to merge 1 commit into
mainfrom
codex/a11y-chat-history-settings-trigger
Closed

fix(web): name the chat history settings trigger#40246
lyzno1 wants to merge 1 commit into
mainfrom
codex/a11y-chat-history-settings-trigger

Conversation

@lyzno1

@lyzno1 lyzno1 commented Aug 9, 2026

Copy link
Copy Markdown
Member

Summary

  • give the chat-history settings icon button the existing translated settings title as its accessible name
  • mark the trigger icon decorative
  • tighten the component tests from an unnamed button query to role + name

Behavior contract

  • Dify UI Popover continues to own trigger state, focus, and disclosure behavior
  • ActionButton continues to own the visual button contract
  • the visible popover title and trigger name share the same existing translation key
  • no test id is introduced; behavior is located through the accessible role and name

Scope

Only the chat-with-history ViewFormDropdown implementation and its focused test.

The embedded-chat implementation is a separate owner already covered by #40199; this PR does not depend on or modify that implementation.

Test evidence

The updated tests failed first because the existing trigger had button role but an empty accessible name. After the production change, all 3 tests pass while continuing to cover open, close, multiple form items, and visual action state.

Visual regression

The production diff only adds aria-label and aria-hidden attributes. Elements, class names, styles, dimensions, order, pointer behavior, and open-state rendering are unchanged.

The two existing icon migration warnings are deliberately not folded into this PR because that would require a separate visual validation boundary.

Verification

  • pnpm exec vp test run app/components/base/chat/chat-with-history/inputs-form/__tests__/view-form-dropdown.spec.tsx — 3/3
  • targeted vp check — 0 errors
  • node scripts/lint-a11y.mjs app/components/base/chat/chat-with-history/inputs-form/view-form-dropdown.tsx
  • pnpm check — 0 errors, existing warnings only
  • git diff --check

Stack

Base: main

This is a single-layer, independently reviewable and revertible PR.

@github-actions github-actions Bot added the web This relates to changes on the web. label Aug 9, 2026
@codecov

codecov Bot commented Aug 9, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 86.42%. Comparing base (e036075) to head (a448222).
⚠️ Report is 11 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main   #40246   +/-   ##
=======================================
  Coverage   86.41%   86.42%           
=======================================
  Files        5107     5107           
  Lines      290731   290750   +19     
  Branches    57917    57923    +6     
=======================================
+ Hits       251245   251268   +23     
+ Misses      34545    34541    -4     
  Partials     4941     4941           
Flag Coverage Δ
dify-ui 93.49% <ø> (ø)
web 86.11% <100.00%> (+<0.01%) ⬆️

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:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@lyzno1

lyzno1 commented Aug 9, 2026

Copy link
Copy Markdown
Member Author

Closing as superseded by the consolidated owner PR #40341, which covers both chat ViewFormDropdown variants with action-oriented names and expanded-state tests.

@lyzno1 lyzno1 closed this Aug 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

web This relates to changes on the web.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant