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

   ### Which Issue(s) This PR Fixes
   Fixes #5988
   ### Problem / Evidence
   `AlertService.updateRule` returned the request-derived VO while 
`lastTriggered` is not an editable field the repository preserves 
(`MybatisPlusAlertRepository`: "lastTriggered is not an editable field ... 
keeps the skip-on-null behaviour"), and the page adopts the response as the row:
   ```
   AlertServiceTest: updateRuleShouldReturnTheStoredRuleInsteadOfTheRequestTest
   expected: "2026-10-01T10:00:00" but was: null
   ```
   `toggleRule` already answers with the stored row, so the same table 
disagreed with itself.
   ### Root cause / Fix
   The update path has no read-back. Return `alertRepository.findRuleById(id)`, 
falling back to the request when the row cannot be read.
   ### Priority and scoring
   **PRIORITY 52** - impact 18/40 (a wrong value in a management table after 
every edit), blast radius 12/20 (both domains), reproducibility 18/20 (pinned 
by the new test), maintenance value 4/20. **FIX_CONFIDENCE 88**.
   ### Tests
   `cd server && mvn -o -B -ntp test 
-Dtest='AlertRuleControllerTest,AlertServiceTest'` -> `Tests run: 106, 
Failures: 0, Errors: 0`; the new case fails before the change and passes after 
it; `checkstyle:check` passes.
   ### Risk
   One extra read per update; the response now reflects the stored row (the 
intended contract).
   


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