Frun1na opened a new pull request, #5683: URL: https://github.com/apache/rocketmq-dashboard/pull/5683
### Which Issue(s) This PR Fixes No issue: documentation for endpoints the specification omits. The umbrella report for these gaps (#4831) was closed by the stale bot, and this is one area extracted from #4835 so it can be reviewed on its own. ### Brief Description Adds the six consumer-group endpoints that had no section in `docs/api-spec.md`, plus their rows in 接口速查 (108-113): - **6.10** `GET /api/groups/page` — paged group list with `instanceId` / `clusterId` / `search` / `page` / `pageSize` - **6.11** `GET /api/groups/:name/settings` — runtime settings for one group - **6.12** `POST /api/groups/settings` — update those settings - **6.13** `GET /api/groups/:name/refresh` — refresh one group, including the "group is gone" answer - **6.14** `GET /api/groups/:name/instances/:clientId/stack` — consumer thread stack - **6.15** `POST /api/groups/reset-offset/preview` — reset preview with the full result shape Every path, parameter and field was read off the current controllers and DTOs rather than carried over from an earlier revision of the spec: | Section | Source | |---|---| | 6.10 | `ConsumerGroupController.listConsumerGroupsPage` (`instanceId` included — newer than the spec's own §6.1) | | 6.11 / 6.12 | `ConsumerGroupController.getConsumerGroupSettings` / `updateConsumerGroupSettings`, `UpdateConsumerGroupSettingsDTO`, `ConsumerGroupSettingsVO` | | 6.13 | `ConsumerGroupController.refreshConsumerGroup` → `MetadataService.refreshConsumerGroup` (`orElse(null)` → `200` with `data: null`; the console keeps the existing row, `consumer.tsx` only replaces it when a value comes back) | | 6.14 | `ConsumerGroupController.getConsumerStack`, `ConsumerStackTraceVO`, `ConsumerThreadStackVO` | | 6.15 | `ConsumerGroupController.previewResetOffset`, `ResetConsumerOffsetDTO`, `ResetConsumerOffsetPreviewVO`, `ResetConsumerOffsetQueuePreviewVO` | The two runtime-settings endpoints state the restriction they actually have: both go through `MetadataService.requireApacheInstance`, so cloud instances answer `501` instead of a settings payload. ### How Did You Test This Change? Documentation only — no code, configuration or test changes. - Each of the six endpoint paths was matched against the `@GetMapping` / `@PostMapping` declarations in `server/src/main/java/org/apache/rocketmq/studio/instance/group/ConsumerGroupController.java`, and each parameter's required flag against its `@RequestParam`/`@PathVariable` declaration. - Each response field list was matched field-by-field against the VO it renders (`ConsumerGroupSettingsVO`, `ConsumerStackTraceVO`, `ConsumerThreadStackVO`, `ResetConsumerOffsetPreviewVO`, `ResetConsumerOffsetQueuePreviewVO`); 6.15 documents all fifteen top-level fields plus the queue preview shape, which an earlier draft of this content did not. - Request bodies were matched against the DTOs' validation annotations (`@NotBlank` / `@NotNull`), which is how 6.12 marks `retryQueueNums` / `retryMaxTimes` required and 6.15 marks `topic` required. - The `501` note follows `MetadataService.requireApacheInstance` (the same rule the spec's cloud notes use elsewhere). - Markdown structure checked with `grep -n "^### 6\\."` (6.1-6.15 in order, no duplicate numbers) and the table rows (`108`-`113`) are appended to 接口速查 without renumbering the existing rows. ### Checklist - [x] One coherent change; unrelated modifications are not bundled in - [x] Commit subject follows Conventional Commits (`feat:` / `fix:` / `refactor:` / `chore:` / `docs:` / `perf:`) - [x] Tests added or updated for non-trivial changes, test methods named `...Test` - [ ] New UI text has both Chinese and English entries under `web/src/i18n/` - [ ] Architecture constraints stay green (`mvn test` runs the ArchUnit checks) - [ ] New source files carry the ASF license header - [x] Documentation touched where behaviour changed (README / `docs/` / in-app help) --- Extracted from #4835: that umbrella PR grew to 110 new sections while the file moved underneath it, and 46 of them are now documented elsewhere. This is the consumer-group area, verified against the current controllers; other areas follow as their own PRs. -- 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]
