Default wizard steps were duplicated once per server instance of the same
type (e.g., 2 Plex servers → 6 steps instead of 3). Deduplicate the
server type list before loading steps so each type's steps appear only once.
Also add the missing wizard_bundle_id parameter to the invitation creation
API, matching the existing web UI capability.
Closes#1219
Add created_at column to the User model, an Alembic migration to
backfill existing rows via server_default, and update the API
serialization and OpenAPI spec from the stale `created` field to
`created_at` so the joined/created date is no longer returned as null.
+ Created admins namespace in api_routes for new /admins endpoint
+ GET /admins endpoint added to api_routes (similar to GET /users)
GET /admins returns:
- Admin account info (admins)
- Total # of admins (count)
For each admin in admins:
- ID (id)
- Username (username)
- # of Passkeys (passkeys)
- Creation date (created)
More detailed information can be found in the small models.py diff
- Updated `InvitationCreateRequest` model to change `server_ids` from required to optional with improved description.
- Enhanced `library_model` to include `external_id`, `server_name`, and `enabled` fields.
- Modified `InvitationFlowManager` to prioritize new many-to-many relationship checks for invitations.
- Created a new migration file to merge branches related to API key and foreign key improvements.
- Added comprehensive tests for API endpoints, including status, users, invitations, libraries, servers, and API key management.
- Implemented error handling tests for malformed JSON and inactive API keys.