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]