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]

Reply via email to