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

   ### 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
   
   Historical affected baseline: 
master@987b748e8f4f421c5cd3c4c4e51a064cc7e59f18. This continuation preserves 
the dated evidence from #4500; it does not claim a fresh reproduction on 
today's master.
   
   ### Runtime Environment
   
   Controlled SDK response fixtures and local tests against pinned 
alibabacloud-rocketmq20220801:5.0.8. No live HTTP 200 / success=false capture 
is claimed.
   
   ### Connected RocketMQ Cluster
   
   Aliyun RocketMQ cloud read APIs; synthetic decoded SDK responses, no live 
cluster used.
   
   ### Build Toolchain
   
   _No response_
   
   ### Describe the Bug
   
   ## Tracking continuation (2026-10-10)
   
   This replaces #4500, which was automatically closed by github-actions[bot] 
for inactivity on 2026-09-25. The issue's technical/design scope is preserved. 
Its current discussion and related issue/PR searches were rechecked before 
creating this continuation; no existing replacement issue was found.
   
   Existing consolidated fix PR #4504 remains open and ready for review, 
covering this read-path issue and catalog issue #4505 together. The earlier 
#4507 was superseded. Explicit Boolean.FALSE maps to 422, omitted flags remain 
accepted, and a missing envelope maps to 502; the closed mutation proposal 
#4499 remains out of scope. No live HTTP 200/success=false capture is claimed.
   
   The original report below retains its stated baseline and historical 
verification. It does not claim fresh test results, fully green CI, or new 
maintainer approval. Discussion and prior evidence remain available in #4500.
   
   Studio's Aliyun provider reads `data` from the decoded bodies of 
`ListTopics`, `ListConsumerGroups`, `ListTopicSubscriptions`, 
`ListConsumerGroupSubscriptions`, `GetConsumerGroupLag`, `ListMessages`, and 
`GetTrace`, but does not check an explicit business rejection in `success`. A 
normally completed SDK response with `success=false` and empty `data` can 
therefore be presented as an empty operational result. A null response/body can 
also be mistaken for empty data.
   
   This behavior is reproduced with controlled SDK response fixtures. We do 
**not** have a captured live HTTP 200 / `success=false` response from these 
APIs, so this report does not claim a production occurrence of that response 
shape.
   
   ### Steps to Reproduce
   
   Use controlled SDK response fixtures for the listed Aliyun read APIs: a 
present decoded body with success=false and empty data, then null response/body 
cases. Invoke the affected provider read path. Compare with omitted-success and 
accepted-empty controls. Existing PR #4504 contains focused regressions.
   
   ### What Did You Expect to See?
   
   - For a present response body, reject only an explicit `Boolean.FALSE` 
success flag as a business failure (HTTP 422), preserving the provider's 
code/message. An omitted `success` flag remains accepted.
   - Reject a null response or body as a malformed upstream response (HTTP 502).
   - Preserve legitimate empty results from a present, accepted response body. 
Keep existing SDK exception mapping unchanged.
   
   ### What Did You See Instead?
   
   If one of these APIs returns an explicit business rejection in a decoded 
body, Studio can report no topics, groups, subscriptions, progress, messages, 
or traces instead of showing the rejection. A missing response envelope can 
likewise be presented as an empty result. Those outcomes are misleading during 
incident diagnosis.
   
   ### Additional Context
   
   [#4504](https://github.com/apache/rocketmq-dashboard/pull/4504) combines 
this read-path fix with catalog issue #4505 through one shared validator, as 
requested in maintainer review. At revision `07f4989`, controlled tests cover 
explicit false, omitted flags, null envelopes, and accepted empty data across 
read and catalog paths; the PR reports 171/171 focused tests passing, 
Checkstyle 0, and a successful package build. These are local fixture/build 
results, not live cloud-response captures. The mutation proposal #4499 is 
closed and out of scope.
   
   AI-assisted source audit; response signatures were checked against the 
pinned `alibabacloud-rocketmq20220801:5.0.8` SDK jar.
   
   ### Are You Willing to Submit a Pull Request?
   
   - [ ] 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