Wang1rrr opened a new pull request, #4896: URL: https://github.com/apache/rocketmq-dashboard/pull/4896
## Summary Fixes #4582. Topic updates used `TopicVO`'s primitive queue fields as both a real value and an omission sentinel. The provider then replaced every non-positive value with the existing count (or the default `8`), so an explicit `writeQueues: 0` or `readQueues: 0` could never reach the broker. ## Changes - Make `writeQueues` and `readQueues` required at the REST update boundary while retaining `TopicVO`'s non-nullable response contract. - Apply update queue counts verbatim, including zero; AI partial updates continue to merge omitted fields with the current topic before reaching the provider. - Tighten the frontend update request type so UI callers cannot omit either queue count. - Document the zero-value/update contract and add controller/provider regression coverage for missing and explicit-zero values. This keeps create-time defaulting unchanged and avoids leaking nullable queue fields into AI output or public response models. ## Validation - `mvn -B -ntp -Dmaven.repo.local=/tmp/rmq-maven.6P98P5/repo -DskipITs -Dtest=RocketMQAdminClientImplTest,TopicControllerTest test` (89 tests passed) - `npm run build` (passed) - `npx vitest run src/pages/instance/__tests__/TopicPage.test.tsx` (32 tests passed) The full frontend suite completed 1,285 assertions; Vitest also reported four pre-existing jsdom/react unhandled errors in unrelated tests. The full server suite could not complete in this environment because integration contexts require unavailable MySQL credentials. -- 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]
