zmuxuny opened a new pull request, #4514: URL: https://github.com/apache/rocketmq-dashboard/pull/4514
### Which Issue(s) This PR Fixes - Fixes #4513 ### Brief Description Tencent `DescribeMessageList` can report a positive `TotalCount` while its nullable `Data` field contains no valid page rows. Studio previously treated that as a zero-length final page and returned `MessageQueryResult.complete(empty)`, making an incomplete provider response look like a confirmed empty query. This change fails closed only when `TotalCount > collected` but the current page returns zero rows. A genuine empty response (`TotalCount=0`/absent with no rows) remains complete and empty. Existing #3048 result-budget, truncation and TaskRequestId pagination semantics are unchanged. ### Red / Green Verification Baseline: `master@987b748e8f4f421c5cd3c4c4e51a064cc7e59f18`. Fail-before: - `TotalCount=1`, `Data=null` returned normally as `complete(empty)`. - `TencentInstanceProviderTest`: **45 tests, exactly 1 failure** (`Expecting code to raise a throwable`). Green, Java 21: - `TencentInstanceProviderTest,MessageServiceTest,MessageControllerTest,MessageQueryToolHandlerTest`: **77/77 passed**. - Added compatibility coverage proving `TotalCount=0, Data=null` remains a complete empty result. - Checkstyle: **0 violations**. - `mvn -B -ntp -DskipTests package`: **BUILD SUCCESS**. - `git diff --check`: clean. Tencent's current `DescribeMessageList` documentation marks `Data` as nullable when no valid value can be obtained. This patch does not interpret that state as "no matches" when the same response says matches remain. AI-assisted source audit, implementation and regression authoring; red/green verification was executed locally before submission. -- 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]
