Conversation
|
@claude review |
|
Claude finished @malinskibeniamin's task in 3m 27s —— View job Code Review: Security page refactorTasks
SummaryGood overall refactor — moving from full-page routes to dialogs for create/edit flows is a cleaner UX pattern, and the shared 🐛 Bugs1. Broken E2E test: The test clicks // user-management.spec.ts:72-80 — references deleted route + removed testId
await page.getByTestId('create-acls-button').click();
await expect(page).toHaveURL(/\/security\/acls\/create/);Similarly, 2. Non-reactive role membership lookup [
// use-principal-permissions.ts:105
for (const [roleName, members] of rolesApi.roleMembers) { // ← not reactive3. Dead code [ The return value of // user-details.tsx:48
formatMechanism(currentUser?.mechanism); // result is unused
|
- Use ConnectError.from() for structured error messages in role creation - Include member name in remove-from-role toast notification - Replace raw <h2> with Heading registry component in acls-card - Use pluralizeWithNumber() for ACL count summary text - Use <Empty> component for inline no-ACLs state in PrincipalRow - Improve empty states in roles and users tabs with <Empty> registry component - Navigate to user details after creation in E2E security-page helper
SearchField renders with placeholder "Filter by name" (not the regexp variant from UsersTabNew) in the e2e environment. Also drops the no-op "Get filter input" step and renumbers accordingly.
UsersTabOriginal (feature-flag off) stores the search query under the key 'q' via useQueryStateWithCallback, not 'name' as UsersTabNew does.
- topics/schemas: getByText(name) resolves to 2 elements (heading + breadcrumb) — add .first() to disambiguate - role.spec.ts: networkidle waits exhaust the 30s test budget on the roles page which makes continual API calls — switch to domcontentloaded
Connector name appears in both breadcrumb and h1, so getByText resolves to 2 elements. Add .first() to avoid strict mode failure.
|
@claude review |
|
Claude finished @jvorcak's task in 5m 9s —— View job Code Review: Security page refactor (re-review after feature-flag commits)The PR is now well-gated behind 🐛 Bugs1. Non-reactive
// roles-tab-new.tsx:119
members: rolesApi.roleMembers.get(r.name) ?? [],
// use-principal-permissions.ts:105
for (const [roleName, members] of rolesApi.roleMembers) { ... }After 2. Dead code re-introduced [ formatMechanism(currentUser?.mechanism); // result discardedThe legacy 3. select: (r) => r.resources.length,
...
<TagsValue>{`${aclCount} ACL${aclCount !== 1 ? 's' : ''}`}</TagsValue>
4. Raw Per
5. Inconsistent principal format on role-membership updates
The legacy 6. setSubmitError(err instanceof Error ? err.message : String(err));Same fix the reviewer asked for in 7.
const handleClose = useCallback(() => {
setStep('form');
// ...also reset username/password/mechanism if they aren't already
onOpenChange(false);
}, [onOpenChange]);
|
SpicyPete
left a comment
There was a problem hiding this comment.
Just a few minor comments on the code, going to run this locally next.
|
|
Nice, looks like those issues are resolved. |
























Uh oh!
There was an error while loading. Please reload this page.