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

   ### 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 #4505; 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 cloud catalog APIs; synthetic decoded SDK responses, no live cluster 
used.
   
   ### Build Toolchain
   
   _No response_
   
   ### Describe the Bug
   
   ## Tracking continuation (2026-10-10)
   
   This replaces #4505, 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 catalog issue and read-path issue #4500 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 #4505.
   
   `AliyunCatalogService` uses the decoded `data` from `ListRegions`, 
`ListInstances`, and `GetInstance` without checking an explicit `success=false` 
business result. In controlled SDK response fixtures, an explicit rejection 
with empty data can become an empty region/instance list or a false 
instance-not-found result. A null response/body is another ambiguous case.
   
   We do **not** have a captured live HTTP 200 / `success=false` response from 
these cloud APIs. The fixtures demonstrate the code path, not that this 
response shape has occurred in production.
   
   ### Steps to Reproduce
   
   Use controlled SDK response fixtures for ListRegions, ListInstances and 
GetInstance: a present decoded body with success=false and empty data, then 
null response/body cases. Invoke the affected AliyunCatalogService 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).
   - Keep genuine empty results and a present, accepted `GetInstance` body 
without data on their existing empty/not-found paths. Keep SDK exception 
mapping unchanged.
   
   ### What Did You See Instead?
   
   If a decoded catalog response carries an explicit business rejection, Studio 
can show an empty or partial inventory, or report that an instance does not 
exist. A missing response envelope can also be mistaken for a valid empty 
result. These catalog paths drive credential-backed region selection, instance 
discovery, and onboarding.
   
   ### Additional Context
   
   [#4504](https://github.com/apache/rocketmq-dashboard/pull/4504) consolidates 
this catalog fix with read-path issue #4500 in one shared validator, as 
requested in maintainer review. The earlier catalog PR #4507 was closed as 
superseded, not merged. At revision `07f4989`, the combined PR reports 171/171 
focused tests passing, Checkstyle 0, and a successful package build; controlled 
tests cover explicit false, omitted flags, null envelopes, and accepted empty 
data. These are local fixture/build results, not live cloud-response captures.
   
   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