tju-yxq opened a new pull request, #2437: URL: https://github.com/apache/rocketmq-dashboard/pull/2437
### What changes are included? `GET /api/k8s-certs` still loads every local certificate, refreshes expiry state for all of them, and leaves filtering to the browser. This adds a bounded server-side inventory contract while keeping the existing endpoint unchanged: - `GET /api/k8s-certs/page?search=&cluster=&type=&status=&page=&pageSize=` - repository-level filtering and pagination, ordered by `gmt_modified DESC, id DESC` - expiry state is recalculated only for the returned page - service validates `page >= 1` and `1 <= pageSize <= 100` before repository access - the UI consumes the page contract, adds cluster and status filters, server totals, page-size switching, and request sequencing that ignores stale responses - creating or deleting a certificate now reloads the canonical server page; filters reset to page 1 ### Verification - Backend focused: `K8sCertServiceTest`, `K8sCertControllerTest`, `MybatisPlusK8sCertRepositoryTest` - Backend full suite: 1,484 tests passed, Checkstyle 0 violations - Frontend focused: `cluster.test.ts`, `K8sCertsPage.test.tsx` - Frontend full suite: 94 files / 634 tests passed - `npm run build` passed - `npm run lint` passed with only the existing `topic.tsx` hooks warning - `git diff --check` passed Fixes #2275 -- 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]
