You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by "unbridled-41 (via GitHub)" <gi...@apache.org> on 2026/10/09 21:40:30 UTC
[PR] fix(acl): let the rule dialog pick any principal, not only the loaded user page [rocketmq-dashboard]
unbridled-41 opened a new pull request, #5993:
URL: https://github.com/apache/rocketmq-dashboard/pull/5993
### Which Issue(s) This PR Fixes
Fixes #5992
### Problem / Evidence
The dialog's options came from `users`, the paged and keyword-filtered Users-tab state:
```tsx
options={users.map((u) => ({ value: u.username, label: u.username }))}
```
```
AclPage: offers users outside the loaded user page as rule principals
TestingLibraryElementError: Unable to find an element with the text: directory-only-user
```
### Root cause / Fix
One state served two requirements (a paged table and a complete picker source). Load the complete directory once per instance through the existing unpaginated `listAclUsers` (refreshed after a user mutation), use it for the picker and the admin badge, and keep the edited rule's principal selectable so saving an unrelated change cannot invent one.
### Priority and scoring
**PRIORITY 72** - impact 28/40 (a core write path unusable beyond page 1 of users), blast radius 14/20 (any deployment with more than 20 ACL users), reproducibility 18/20 (pinned by the new test), maintenance value 12/20. **FIX_CONFIDENCE 85**.
### Tests
`cd web && npx vitest run src/pages/instance/__tests__/AclPage.test.tsx` -> `Tests 27 passed`; the new case fails before the change and passes after it; the Tencent role case now stubs the directory for the same reason; `npx eslint` and `npx tsc -b` pass.
### Risk
One additional request per instance (and after user mutations); the paged table is unchanged.
--
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: commits-unsubscribe@rocketmq.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] fix(acl): let the rule dialog pick any principal, not only the loaded user page [rocketmq-dashboard]
Posted by "unbridled-41 (via GitHub)" <gi...@apache.org>.
unbridled-41 commented on PR #5993:
URL: https://github.com/apache/rocketmq-dashboard/pull/5993#issuecomment-6091427418
### Verification on the final commit (branch + commit + command results)
Every command from the description re-run on a fresh worktree of this branch (`git worktree add <dir> fork/<branch>`, no local modifications), at commit `a91365ee45`:
| command | exit | result |
| --- | --- | --- |
| `cd web && npx vitest run src/pages/instance/__tests__/AclPage.test.tsx` | 0 | `Test Files 1 passed (1) · Tests 27 passed (27)` |
CI note: on this repository the `Backend Build` (binary-license-gate), `Frontend Build` / `Frontend Docker Build` (licence manifest) and `rmqctl Build` (YAML renderer quoting) jobs are red for every branch, trunk included; the module-level commands above are unaffected.
--
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: commits-unsubscribe@rocketmq.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] fix(acl): let the rule dialog pick any principal, not only the loaded user page [rocketmq-dashboard]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #5993:
URL: https://github.com/apache/rocketmq-dashboard/pull/5993#issuecomment-6227215443
This pull request has been automatically closed because there has been no activity for 7 days. If you would like to continue working on this, please reopen the PR with updated changes.
--
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: commits-unsubscribe@rocketmq.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] fix(acl): let the rule dialog pick any principal, not only the loaded user page [rocketmq-dashboard]
Posted by "unbridled-41 (via GitHub)" <gi...@apache.org>.
unbridled-41 commented on PR #5993:
URL: https://github.com/apache/rocketmq-dashboard/pull/5993#issuecomment-6090230015
### CI status of this PR
`Backend Tests (Java 21)` — see the note below the list.
The four remaining red jobs are red for every branch, including `rocketmq-studio` itself:
- `Backend Build (Java 21)` — the `binary-license-gate` antrun step fails on a list of third-party jars (`spring-ai-*`, `swagger-ui`, `tencentcloud-sdk-*`, `zstd-jni`, ... : "missing complete upstream LICENSE/COPYING; a POM name or link is not a substitute"). This PR touches no build configuration; tracked by #5341.
- `Frontend Build (Node 20)` / `Frontend Docker Build` — the frontend licence manifest check fails the same way on branches that do not touch `web/` at all; tracked by #5346.
- `rmqctl Build (Go)` — `cmd` `TestMessageQueryCompletenessWarningTest` yaml subtests: `got {"items":[{"size":"3",...}]}, want {"size":3,...}`, i.e. the YAML renderer writes numbers as quoted strings where the test expects integer literals. Reproduced locally with `cd rmqctl && go test ./cmd/` from a checkout whose `rmqctl/` tree is byte-identical to `rocketmq-studio`'s, and owned by open PR #5850 ("keep yaml numbers unquoted").
`Backend Tests (Java 21)` failure attribution: `ResourceOwnershipGuardTest.migrationConcurrentStartupIsIdempotentTest` — `org.h2.jdbc.JdbcSQLNonTransientException: General error: java.util.ConcurrentModificationException` — the known flaky H2 concurrency test tracked by #5302. It reproduces independently of this diff (which touches no persistence code) and the same job passes on sibling PRs of the same batch.
--
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: commits-unsubscribe@rocketmq.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] fix(acl): let the rule dialog pick any principal, not only the loaded user page [rocketmq-dashboard]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] closed pull request #5993: fix(acl): let the rule dialog pick any principal, not only the loaded user page
URL: https://github.com/apache/rocketmq-dashboard/pull/5993
--
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: commits-unsubscribe@rocketmq.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org