Loyal-Young opened a new issue, #6415:
URL: https://github.com/apache/rocketmq-dashboard/issues/6415

   ### Before Creating the Bug Report
   - [x] Searched for duplicates. Searched silence/labels and 
silence/duplicate; existing work concerns length limits, display, editing and 
acknowledgement, not selector loss during parsing.
   - [x] This concerns RocketMQ Studio.
   
   ### Studio Version
   rocketmq-studio, 779b8c0e7aed2396d3cc72743dcd544ea48e9ae6.
   
   ### Runtime Environment
   Windows; Java 21 / Node 24. Reproduction will use the real schedule/service 
or React hook with controlled dependencies.
   
   ### Connected RocketMQ Cluster
   No live broker is required for this defect.
   
   ### Describe the Bug
   The maintenance dialog builds labels by assigning into a plain object. 
__proto__=broker-a does not create an own label, so the request can become 
unscoped. Repeated labels such as broker=a,broker=b silently keep the latter. 
The backend also trims keys into a map without detecting collisions, so 
{"broker":"a"," broker ":"b"} silently changes the requested scope.
   
   ### Steps to Reproduce
   In a maintenance-window form enter __proto__=broker-a, or broker=a,broker=b. 
Submit otherwise valid fields and inspect the request. For the REST service, 
provide keys that become identical after trimming.
   
   ### What Did You Expect to See?
   Preserve every valid selector including ordinary object-property names, 
reject empty or duplicate normalized keys before creating a window, and retain 
the existing key=value syntax and localized validation message.
   
   ### Are You Willing to Submit a Pull Request?
   - [x] Yes, including regression and positive-path tests.


-- 
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