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

   ### Before Creating the Bug Report
   
   - [x] I have searched the [open 
issues](https://github.com/apache/rocketmq-dashboard/issues) of this repository 
and believe that this is not a duplicate.
   
   - [x] This is a defect in RocketMQ Studio, not a usage question and not a 
defect in another Apache RocketMQ repository.
   
   - [x] I can reproduce this on the current `master` branch, or I have stated 
the exact version I am running below.
   
   
   ### Studio Version
   
   Originally reported in #5039; that report did not record its exact initial 
commit. PR #5251 was refreshed against 
rocketmq-studio@5e4c39b053c35a5598cc79ff331b8a54e649d7b1 on October 10; latest 
review revision is 70671669743fa024155c8b3416b471f71e8c767a. The results below 
are dated published validation, not fresh October 12 tests.
   
   ### Runtime Environment
   
   Studio K8s certificate metadata inventory, K8sCertService and its frontend 
page. Fixed-clock service tests on Java 21 and frontend Vitest. This concerns 
reporting certificate validity, not installing certificates or changing 
Kubernetes.
   
   ### Connected RocketMQ Cluster
   
   No live RocketMQ or Kubernetes cluster is required for the 
certificate-status calculation.
   
   ### Build Toolchain
   
   _No response_
   
   ### Describe the Bug
   
   This continues #5039 → #5549. github-actions[bot] closed #5549 on 2026-10-12 
at 00:22:15 UTC after seven days without issue activity: 
https://github.com/apache/rocketmq-dashboard/issues/5549#issuecomment-6115549109
 . The closure is stale housekeeping, not a maintainer rejection.
   
   K8sCertService.createCert parses and stores both notBefore and notAfter, but 
the reported refreshExpirationState implementation only checks notAfter. A 
certificate whose expiry is more than 30 days away can be shown as valid even 
before its validity starts.
   
   Existing fix PR #5251 remains Open and Ready for review at 
70671669743fa024155c8b3416b471f71e8c767a, unmerged. No new PR or expanded 
implementation is proposed.
   
   ### Steps to Reproduce
   
   1. Use a fixed clock at 2025-07-01 UTC.
   2. Provide a certificate with notBefore=2025-07-02 and notAfter=2026-07-02.
   3. Call listCerts() and inspect its status and inventory label.
   
   The create form's parsed PEM dates flow through the same status calculation. 
A controlled service fixture reproduces the defect without uploading a real 
certificate.
   
   ### What Did You Expect to See?
   
   Return a distinct not_yet_valid state before notBefore, preserving expired 
precedence and the existing valid/expiring boundaries. Preserve validity dates 
and daysRemaining; expose and translate the state consistently in API/UI. 
notBefore equal to now or absent retains existing behavior.
   
   ### What Did You See Instead?
   
   Before the correction, listCerts() returns status=valid before the validity 
period begins and the inventory shows a green valid label.
   
   ### Additional Context
   
   ### Existing review and revision
   
   The October 10 review confirmed the defect and requested the missing API 
enum-glossary entry, consistent translation of all four labels, and conflict 
resolution retaining upstream UTC tests: 
https://github.com/apache/rocketmq-dashboard/pull/5251#pullrequestreview-5478049590
 .
   
   The published response 
https://github.com/apache/rocketmq-dashboard/pull/5251#issuecomment-6095264396 
records those changes in 70671669743fa024155c8b3416b471f71e8c767a, following 
non-force merge 360d1817. No later maintainer approval or merge is claimed.
   
   ### Dated validation (2026-10-10)
   
   34/34 Java service/controller tests and 16/16 focused frontend 
certificate/translation tests passed. Both original future-validity and 
upstream UTC regressions remain. Chinese/English LangProvider cases render all 
four tags. TypeScript, Vite and final artifact-license verification passed 
locally; lint had zero errors/ten warnings, formatting and whitespace checks 
passed. The full local frontend suite was not rerun for this final three-file 
follow-up.
   
   Exact-head CI 
https://github.com/apache/rocketmq-dashboard/actions/runs/38034250005 completed 
with failures:
   - Backend Tests: 3436/3436 passed; Go and frontend Docker passed.
   - Frontend: 1518 passed, two failures in unchanged CloudCredentialTab tests; 
all 14 certificate-page cases passed. Later license/build steps in that job 
were skipped.
   - Backend Build: binary-license gate failed with 164 missing complete 
LICENSE/COPYING diagnostics, matching base 5e4c39b0's run 38031714207.
   
   Repeated focused CloudCredential runs on this source both passed and 
reproduced the same failures. Base/preceding-head focused checks passed, so the 
frontend failures are not claimed proven baseline failures. Overall CI is not 
green. No unrelated tests were modified/skipped and no remote rerun is claimed.
   
   References to #5549 and future-dated/notBefore reports were checked before 
filing; no newer equivalent continuation was found. Scope remains 
certificate-status reporting only. AI assistance was used.
   
   ### Are You Willing to Submit a Pull Request?
   
   - [x] Yes, I am willing to submit a pull request.


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