Wang1rrr opened a new pull request, #4782:
URL: https://github.com/apache/rocketmq-dashboard/pull/4782

   ### Which Issue(s) This PR Fixes
   
   Fixes #4780
   
   ### Brief Description
   
   For Tencent roles, the principal is the update target, not a movable 
attribute of
   an independently identified database rule. The editor currently permits 
changing
   it while retaining the selected row ID and permissions, producing id=A and
   principal=B.
   
   Disable the principal Select only when editing an existing Tencent rule. Its
   value remains in Ant Design Form submission, so permissions can still change 
on
   the selected role. Tencent creation can still select a role, and editing 
local
   Studio metadata retains the current editable-principal behavior.
   
   The production change is one condition. No DTO, provider, API, authorization,
   dependency or remote-role mapping changes. Intentional string-ID 
compatibility
   is preserved. This fixes the ordinary UI workflow, not a server-side 
enforcement
   rule for manually constructed requests.
   
   ### How Did You Test This Change?
   
   Windows, Node.js 22.23.2, existing locked dependencies, isolated LF checkout.
   Three regressions use real page controls and assert the submitted service 
request:
   
   - Tencent edit: principal disabled; modifying permissions still submits id=A 
and
     principal=A, including the disabled Form field.
   - Tencent create: choose B and submit B.
   - Local metadata edit: change the principal and retain existing behavior.
   
   On unchanged production the new edit regression failed, while both 
compatibility
   controls passed. After the one-line fix all three pass. An earlier 
independent
   component diagnostic separately captured the actual id=A/principal=B bug; it 
was
   archived and is not left in the suite as an assertion of broken behavior.
   
   Independent code review: APPROVE, no blockers. Targeted regressions, 
changed-file
   Prettier, repository ESLint and TypeScript/Vite production build passed.
   
   Full verification from `web/`:
   
   ```text
   npm test -- --maxWorkers=2  -> 139 files / 1283 tests passed (585.46s)
   npm run lint              -> 0 errors, 11 existing warnings in unchanged 
files
   npm run build             -> tsc -b and Vite production build passed
   prettier --check <both changed files> -> passed
   git diff --check           -> passed
   ```
   
   All checked source hashes remained unchanged throughout the root 
verification.
   Remote CI is not claimed as passed.
   
   No Java backend, Tencent SDK or live-cloud mutation was executed. These tests
   verify real UI behavior to the mocked service boundary; the unchanged backend
   routing is explained from source, not claimed as cloud E2E.
   
   Prepared with AI assistance and independent review.
   
   ### Checklist
   
   - [x] Single issue-linked change; no unrelated formatting or refactor
   - [x] Expected regression observed failing before the production fix
   - [x] Tencent creation and local metadata editing controls
   - [x] No API/DTO/dependency changes; intentional string-ID behavior retained
   - [ ] Live Java/provider/cloud E2E (not run)
   


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