unbridled-41 opened a new pull request, #6009:
URL: https://github.com/apache/rocketmq-dashboard/pull/6009

   ### Which Issue(s) This PR Fixes
   Fixes #6008
   ### Problem / Evidence
   ```java
   // createTopic (before): only id/queues back-filled
   topic.setId(entity.getId());
   topic.setWriteQueues(writeQueues);
   topic.setReadQueues(readQueues);
   return topic;
   ```
   ```
   RocketMQAdminClientImplTest: 
createTopicShouldAnswerWithTheStoredPermClusterAndTypeTest
   expected: RW but was: null
   ```
   The update path already documents the principle for the remark ("so a clear 
or an omitted remark cannot be mistaken for a value the update did not write").
   ### Root cause / Fix
   Neither write path re-projected the stored columns. Copy the persisted 
cluster, permission and type onto the response (the type only when the request 
omitted it, so an explicit value is echoed as submitted).
   ### Priority and scoring
   **PRIORITY 70** - impact 26/40 (API clients and agents read wrong facts from 
the create response), blast radius 16/20 (every create and update through the 
REST API, the AI tools and rmqctl), reproducibility 18/20 (pinned by the new 
test), maintenance value 10/20. **FIX_CONFIDENCE 80**.
   ### Tests
   `cd server && mvn -o -B -ntp test -Dtest='RocketMQAdminClientImplTest'` -> 
`Tests run: 81, Failures: 0, Errors: 0`; the new case fails before the change 
and passes after it; `checkstyle:check` passes.
   ### Risk
   The response now carries three more populated fields; nothing that could 
previously be read as "unset" is lost (a genuinely absent stored value stays 
null).
   


-- 
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