ai-yang opened a new pull request, #765:
URL: https://github.com/apache/rocketmq-dashboard/pull/765

   ## Summary
   
   - derive certificate `status` and `daysRemaining` from the current time when 
certificates are listed or updated
   - keep repository values detached by refreshing copied response objects
   - use one injectable `Clock` for create, update, renew, and read-time expiry 
calculations
   - preserve the existing 30-day expiring threshold and mutable list behavior
   
   ## Root cause
   
   `K8sCertService` calculated time-derived fields only when a certificate was 
created or renewed. A long-running Studio instance therefore kept returning the 
persisted historical status even after the certificate crossed the expiring or 
expired boundary.
   
   The service now refreshes these derived fields at the read/update boundary 
without mutating stored objects returned by the repository.
   
   ## Validation
   
   - unmodified Java 21 baseline: deterministic regression failed in 5/5 
isolated Maven processes
   - fixed list/update expiry regressions: 20 isolated Java 21 Maven processes, 
2/2 each (40/40)
   - `K8sCertServiceTest`: 15/15
   - `K8sCertControllerTest`: 9/9
   - complete server suite: 488/488
   - Maven package: 488/488
   - Maven validate and Checkstyle: passed
   - `git diff --check`: passed
   
   Fixes #759
   
   


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