zmuxuny opened a new issue, #7162:
URL: https://github.com/apache/rocketmq-dashboard/issues/7162

   ### Before Creating the Bug Report
   
   - [x] I have searched the [open 
issues](https://github.com/apache/rocketmq-dashboard/issues) of this repository 
and believe that this is not a duplicate.
   
   - [x] This is a defect in RocketMQ Studio, not a usage question and not a 
defect in another Apache RocketMQ repository.
   
   - [x] I can reproduce this on the current `master` branch, or I have stated 
the exact version I am running below.
   
   
   ### Studio Version
   
   rocketmq-studio at 127c47b06a268cc74224d5f34c56ec7c36ac0d55, built from 
source.
   
   ### Runtime Environment
   
   Linux development environment; focused React Testing Library/jsdom 
reproduction with the real Ant Design Select. No screen-reader or live-browser 
session is claimed.
   
   ### Connected RocketMQ Cluster
   
   No cluster required. This is the accessible name of the frontend instance 
selector, reproduced with local option fixtures and no broker/backend requests.
   
   ### Build Toolchain
   
   Node.js 24.19.0, Vitest 4.1.10; existing cached dependencies, one default 
worker.
   
   ### Describe the Bug
   
   The shared InstanceSelect renders a searchable Ant Design combobox without 
an accessible name. Its visible placeholder and selected option are not labels 
for the actual search input. It is used by Message, Topic, DLQ, ACL and 
Consumer pages, so assistive-technology users encounter an unnamed instance 
selector in those views.
   
   The same gap persists when a value is selected, when a caller supplies a 
custom placeholder, and when the component renders its instance-list failure 
state.
   
   ### Steps to Reproduce
   
   1. Render InstanceSelect under LangProvider, with a selected fixture 
instance and the normal options.
   2. Query the real control by role combobox and inspect its accessible name.
   3. Repeat in Chinese and English, with a custom placeholder, and with 
failed=true.
   4. The visible prompt is present, but role/name queries such as 
getByRole('combobox', {name: 'Select Instance'}) fail because the name is empty.
   
   ### What Did You Expect to See?
   
   Give the actual combobox a translated, stable accessible name using the 
existing instance prompt, including a caller's explicit prompt when supplied. 
Keep the current visible placeholder, search, clearing and selection behavior.
   
   ### What Did You See Instead?
   
   All four new accessible-name cases fail on the unchanged production 
component. The four existing placeholder/empty-list tests pass; visible text 
alone does not verify that the control is named.
   
   ### Additional Context
   
   Focused baseline result: 4 failed / 4 passed in the real InstanceSelect test 
file. The new cases cover selected-value Chinese/English names, an explicit 
caller prompt, and failed instance-list UI. No production edits before filing.
   
   All five actual callers were inspected: none supplies an external label, 
aria-labelledby, or Form.Item label that a component name would replace. The 
intended change is one shared component fix, not five page-specific changes.
   
   All-state targeted issue/PR searches did not find the same work. #3235/#3062 
concern placeholder and empty-text localization, #3762 adds the existing 
placeholder tests, #2786/#2874 normalize search, and #6348 covers a failed 
instance-list load. #7150 labels two different controls on the instance 
inventory page (search/access-type); it does not change InstanceSelect or its 
five consumers.
   
   ### Are You Willing to Submit a Pull Request?
   
   - [x] Yes, I am willing to submit a pull request.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to