docs(admin): users page — accounts, roles, last-admin guards

Eighth admin page. Documents the hidden-by-default create form (and why:
admin creation stays available with registration disabled — the form's
own design comment), live password requirements from active settings,
the card controls with their guards (last admin cannot be demoted or
deleted, dropdowns/buttons disable themselves with explanations), the
admin Edit User Profile modal (profile fields + role + Change Password
without current password — the admin-only difference), and delete
semantics (account + everything owned: devices, sessions, reading
data). Closes the loop on roles: admins get the Administration section;
users see only libraries visible to them, linking libraries.md for the
visibility story. Glossary gains + Create User and Edit User Profile.
(Settings referenced in prose only until that page lands — the first
amend of this commit briefly carried the same forward-link mistake the
dashboard page's amend fixed; pipefail is now the rule.)
This commit is contained in:
John O'Keefe committed 2026-11-02 14:13:23 -05:00
1 parent 535847477e
commit 39b0ab03fe
2 files changed
+73

No files matched your search

+8
View File
@@ -300,6 +300,14 @@ label: Remove
where: Admin → All Podcasts → a feed row
does: Admin-wide feed removal — episode rows, downloaded files, and every user's subscription are deleted. Instance-wide, unlike a user's own unsubscribe.
label: + Create User
where: Admin → Users → page header
does: Opens the account-creation form (hidden until clicked). Available even when public registration is disabled; password rules mirror the live Settings.
label: Edit User Profile
where: Admin → Users → a user card → Edit
does: The admin edit modal — profile fields, role, and Change Password without requiring the user's current password.
label: Resume rewind
where: audio player → player settings; profile settings
does: Rewinds playback a configured few seconds when you resume.