Team management now uses responsive, searchable team cards and focused dialogs for creation, membership and direct team permissions. The old modifier-key multi-select is replaced by searchable checkboxes that retain selections while filtering. Existing endpoints and authorization rules are preserved.
All new interface text uses translation keys. Forms show validation (including nested array errors), network/server failures and forbidden responses, retain drafts on errors, guard unsaved changes, and restore keyboard focus when closed. Empty selections explicitly clear memberships or direct permissions independently.
Validation:
19 targeted PHPUnit tests passed (152 assertions), covering teams, localization and form feedback.
Browser behavior checks passed for create/update/clear, validation, retries, 403 responses, draft protection and focus, at 320/390/1440px in light and dark themes.
ESLint, production build, Pint and final TypeScript check passed.
Browser fixtures are isolated and use no production data.
Ticket: KAN-47. Branch created from the freshly pulled main; PR target is main.
Team management now uses responsive, searchable team cards and focused dialogs for creation, membership and direct team permissions. The old modifier-key multi-select is replaced by searchable checkboxes that retain selections while filtering. Existing endpoints and authorization rules are preserved.
All new interface text uses translation keys. Forms show validation (including nested array errors), network/server failures and forbidden responses, retain drafts on errors, guard unsaved changes, and restore keyboard focus when closed. Empty selections explicitly clear memberships or direct permissions independently.
Validation:
- 19 targeted PHPUnit tests passed (152 assertions), covering teams, localization and form feedback.
- Browser behavior checks passed for create/update/clear, validation, retries, 403 responses, draft protection and focus, at 320/390/1440px in light and dark themes.
- ESLint, production build, Pint and final TypeScript check passed.
- Browser fixtures are isolated and use no production data.
Ticket: KAN-47. Branch created from the freshly pulled `main`; PR target is `main`.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Team management now uses responsive, searchable team cards and focused dialogs for creation, membership and direct team permissions. The old modifier-key multi-select is replaced by searchable checkboxes that retain selections while filtering. Existing endpoints and authorization rules are preserved.
All new interface text uses translation keys. Forms show validation (including nested array errors), network/server failures and forbidden responses, retain drafts on errors, guard unsaved changes, and restore keyboard focus when closed. Empty selections explicitly clear memberships or direct permissions independently.
Validation:
Ticket: KAN-47. Branch created from the freshly pulled
main; PR target ismain.a2e29186cdto1d9df6897d