zmuxuny opened a new pull request, #4496:
URL: https://github.com/apache/rocketmq-dashboard/pull/4496

   ### Which Issue(s) This PR Fixes
   
   - Fixes #4491
   
   ### Brief Description
   
   Extend the existing Topic-page **Send Message** operator workflow from 
Apache-only to the two managed RocketMQ 5.x providers already supported by 
Studio.
   
   - add a provider-level `MESSAGE_SEND` capability and `sendMessage` SPI
   - keep the Apache path unchanged through the existing admin client
   - map Aliyun sends to the pinned SDK's `VerifySendMessage` API, including 
body/tag/key, user properties, message group, and delivery timestamp
   - map Tencent sends to Trocket `SendMessage`, returning its message ID
   - reject Tencent user properties / FIFO message-group / delayed-delivery 
fields instead of silently dropping data the Tencent console API cannot 
represent
   - expose the existing send action for cloud **NORMAL** Topics; FIFO/delay 
cloud sends remain hidden until the UI collects their required semantics
   - fail closed when a cloud API returns an incomplete/unsuccessful response 
instead of reporting a false success
   
   This is intentionally an operator test-message feature, not a replacement 
for application producers. No dependency upgrade is introduced.
   
   ### How Did You Test This Change?
   
   Backend, Java 21:
   
   - `mvn -B -ntp 
-Dtest=AliyunInstanceProviderTest,TencentInstanceProviderTest,ApacheInstanceProviderTest,MetadataServiceTest
 test`
     - **143 tests passed**, 0 failures/errors
     - Checkstyle: **0 violations**
   - capability/controller regression suite: **31 tests passed**
   - request mapping tests verify Aliyun/Tencent fields, success responses, 
missing message IDs, unsuccessful responses, and Tencent fail-closed behavior 
for unsupported fields
   
   Frontend:
   
   - `npx vitest run src/pages/instance/__tests__/TopicPage.test.tsx`
     - **27 tests passed**, including cloud NORMAL Topic test-message sending 
with the selected cloud instance id
   - `npm run build` passed (`8046 modules transformed`)
   - ESLint on touched files: 0 errors
   - Prettier check passed
   - `git diff --check` passed
   
   ### Compatibility / scope
   
   - Apache behavior is unchanged.
   - Existing cloud SDK versions are reused; no dependency changes.
   - UI only exposes cloud sending for `NORMAL` Topics in this change.
   - Aliyun's provider implementation is ready to carry advanced DTO fields 
when dedicated FIFO/delay UI controls are added later.
   
   AI-assisted design and implementation; the pinned SDK signatures and current 
`master` behavior were verified before implementation.
   


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