Summary
GET /auth/internal/users returns 500 when user_ids is omitted, but the route declares user_ids as a required FastAPI
query parameter and should return 422.
Repro
curl -H "X-Api-Key: test-users-internal-api-key" \
http://localhost:8101/auth/internal/users
## Expected
HTTP 422 from FastAPI required query validation.
## Actual
HTTP 500 with details similar to:
PydanticUndefinedType object is not iterable
vars() argument must have __dict__ attribute
## Notes
The route uses user_ids: list[int] = Query(...). FastAPI appears to detect the missing parameter, but the pinned FastAPI/
Pydantic stack fails while JSON-encoding the resulting RequestValidationError because it contains PydanticUndefined.
Integration coverage was added as a strict xfail so unrelated failures still fail normally, and the test should XPASS once
this bug is fixed.
Summary
GET /auth/internal/usersreturns500whenuser_idsis omitted, but the route declaresuser_idsas a required FastAPIquery parameter and should return
422.Repro