89799969 opened a new issue, #4326:
URL: https://github.com/apache/rocketmq-dashboard/issues/4326

   ### Component
   
   Studio / Alerting (`AlertService`)
   
   ### Describe the bug
   
   Every successful `updateRule` and `toggleRule` call does 
`alertStateRepository.deleteByRuleId(id)` unconditionally. That wipes the live 
FIRING / ACK / PENDING episode for the rule even when the evaluation identity 
did not change.
   
   ### Steps to reproduce
   
   1. Have a native alert rule in FIRING state and ACK it (or leave it firing).
   2. Edit only the rule **name** or **description**, or disable and re-enable 
the rule.
   3. Observe `rmq_alert_state` rows for that rule are gone.
   
   ### Expected behavior
   
   State is cleared only when evaluation conditions change (metric, threshold, 
operator, duration, scope fields in `AlertRuleSemanticFingerprint`). Cosmetic 
edits and enable/disable keep the current episode and ACK status.
   
   ### Actual behavior
   
   - Renaming a rule loses the active episode; the next evaluation can re-fire 
and re-notify.
   - Toggling enabled never keeps ACK history, so a temporary mute-and-restore 
looks like a brand-new alert.
   
   ### Severity
   
   High — operator-visible re-fire storms and lost acknowledgements on a core 
Studio alerting path.
   
   ### Related
   
   Semantic fingerprint already exists at `AlertRuleSemanticFingerprint` and is 
used for duplicate detection; reuse it for state retention.
   


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