GitHub
05/19/2026, 7:26 AM/users page now has full parity with the legacy admin Users page
• Add User modal with username, password, admin toggle, fullname, email
• Delete User with confirmation dialog (single confirm, no double-prompt)
• Reset Password per-row action with generated password display
• Environment dropdown + bulk-grant on the permissions modal
• Permission-gated navigation — non-admin users don't see admin-only menu items
• Auth source badges (local / oidc / saml) on user rows
• API delete-user handler now cleans permissions BEFORE deleting the user row (fixes FK constraint error)
Depends on
• #831 (SAML support — includes auth_source field on users)
Test plan
• Add user → appears in table → can log in with new credentials
• Delete user → confirmation dialog → user removed → cannot log in
• Reset password → new password shown → old password rejected → new password works
• Permissions modal → grant env access → user sees only granted envs
• Non-admin user cannot see Users nav item
• Auth source badges display correctly for local, OIDC, and SAML users
• Frontend builds clean (npm run typecheck && npm run build)
jmpsec/osctrlGitHub
05/19/2026, 10:36 PM