Commit Graph
25 Commits
Author SHA1 Message Date
yuneng-jiangandClaude Opus 4.6 f0d283cf9f [Feature] UI - Default Team Settings: Modernize page and fix defaults application
Rewrite Default Team Settings UI from Tremor to antd with hardcoded fields,
fix default team params not applying during team creation or persisting
across proxy restarts, remove dead code, and add comprehensive tests.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 00:01:25 -07:00
Ryan Crabbe 18c0e8843c test: unit test for mkaing sure that user being created with correct value 2026-03-11 15:20:17 -07:00
milan-berriandGitHub 506d1dff43 fix: handle deprovisioning operations without path field (#21571)
* fix(scim): handle deprovisioning operations without path field

When SCIM providers send deprovisioning requests without a path field
(e.g., {"op": "replace", "value": {"active": false}}), the code was
storing the value under an empty string key in metadata.

This fix:
- Detects operations with no path where value is a dict
- Extracts and handles known fields like 'active' correctly
- Sets metadata["scim_active"] = false instead of metadata[""] = {"active": false}

Fixes: SCIM deprovisioning creating empty string keys in user metadata

* fix(scim): handle all known fields in operations without path

Extended the fix to handle all SCIM fields (not just active) when
operations have no path field:
- active -> scim_active
- displayName -> user_alias
- externalId -> user_id
- name.givenName/familyName -> scim_metadata

Added comprehensive test for multiple fields without path.

Addresses Greptile review feedback on RFC 7644 compliance.

* trigger PR update
2026-02-19 11:09:04 -08:00
shin-bot-litellmandGitHub 31241416d4 feat: add base /scim/v2 endpoint for SCIM resource discovery (#20301)
Add the following SCIM v2 discovery endpoints per RFC 7643/7644:

- GET /scim/v2 - Base resource discovery (ListResponse of ResourceTypes)
- GET /scim/v2/ResourceTypes - List all supported resource types
- GET /scim/v2/ResourceTypes/{id} - Get a specific resource type (User/Group)
- GET /scim/v2/Schemas - List all supported schemas
- GET /scim/v2/Schemas/{uri} - Get a specific schema by URI

These endpoints are required by identity providers (Okta, Azure AD, etc.)
for SCIM resource discovery. Previously, GET /scim/v2 returned 404.

Also adds SCIMResourceType, SCIMSchema, and SCIMSchemaAttribute Pydantic
models to the SCIM types module.

Fixes #20295
2026-02-02 14:27:00 -08:00
yuneng-jiang 6022d37eef patching with feature flag 2026-01-09 15:07:53 -08:00
yuneng-jiang 572f3f6d70 Merge commit 'refs/pull/17420/head' of github.com:BerriAI/litellm into litellm_hakhundov_contribution 2026-01-09 14:32:31 -08:00
yuneng-jiang de8f0a3409 Ensure fresh data to prevent race condition in scim v2 2025-12-04 17:04:59 -08:00
Haji Akhundov 69b32dd870 Fix ruff linting errors: remove unused imports and variables 2025-12-03 21:06:32 +01:00
Haji Akhundov e5baff780a Enforce SCIM 2.0 compliance: reject non-existent users in groups
- Reject group operations when users don't exist (security fix)
- Prevents unauthorized user provisioning via group membership
- Aligns with SCIM 2.0 protocol: users must exist before group membership
- Add validation for empty user IDs
- Update tests to verify rejection behavior

This is a breaking change but necessary for security and SCIM compliance.
Users must be created via POST /Users before being added to groups.
2025-12-03 20:44:54 +01:00
Haji Akhundov 8871a5670b Simplify SCIM tests to focus on core issue 2025-12-03 14:50:03 +01:00
Haji Akhundov c01a4c6e57 Add tests for SCIM user_email UUID validation fix
- Test user with UUID in user_email (defensive fix scenario)
- Test user with None email (root cause fix scenario)
- Verifies transformation doesn't fail and emails array is empty for invalid emails
2025-12-03 14:41:10 +01:00
Alexsander HamirandGitHub eaa04cd8ce fix: use fastuuid helper (#14903)
* fix: use fastuuid helper across the codebase

First batch of changes, simple drop in replacement.

* second batch of changes

* fixed: script mistake on helper file
2025-09-25 15:47:01 -07:00
Ishaan JaffandGitHub 8e22cf5d65 [Fix] /responses API - add cancel endpoint + allow non-admins to use this as an llm api endpoint (#14594)
* fix: ensure /responses/cancel works for non admins

* test: cancel endpoint

* fix responses API  cancel endpoint

* test fix

* TestGoogleAIStudioResponsesAPITest
2025-09-15 18:49:54 -07:00
Ishaan JaffandGitHub cebacd65cf [Bug Fix] SCIM v2 - ensure group PUSH and PUT ops allow creating non-existent members (#14581)
* fix: scim handle non existent members

* test - scim v2

* test fix

* fix: NewUserResponse
2025-09-15 11:27:05 -07:00
Ishaan JaffandGitHub beb300abae [Fix] SCIM - Bug fixes for handling SCIM Group Memberships (#14226)
* Feat: add better SCIM debugging

* fix _get_scim_member_display

* fix patch_group

* test_update_group_e2e

* test_get_scim_member_value
2025-09-03 16:15:51 -07:00
Ishaan JaffandGitHub 74ddd21067 [Bug fix] SCIM Team Memberships - handle metadata (#13553)
* test_update_group_metadata_serialization_issue

* fixes for update_group

* test_update_group_metadata_serialization_issue
2025-08-12 20:53:12 -07:00
Ishaan JaffandGitHub 43e7d5288f [Bug Fix] SCIM - add GET /ServiceProviderConfig (#12664)
* add scimv2 config endpoint

* test_get_service_provider_config
2025-07-16 15:43:25 -07:00
Ishaan JaffandGitHub b9feb43dac [Bug Fix] SCIM - Ensure new user roles are applied (#12015)
* SCIM fix new user roles

* test_create_user_defaults_to_viewer

* test_create_user_uses_default_internal_user_params_role

* fix default user for SCIM

* fix linting error
2025-06-24 13:22:56 -07:00
Ishaan Jaff 8818347acc test scim 2025-06-18 21:42:40 -07:00
Ishaan Jaff c71d50fd09 test_handle_team_membership_changes_add_teams 2025-06-18 21:21:55 -07:00
Ishaan Jaff 3043df0d30 fixes test scimv2 2025-06-18 16:38:36 -07:00
Ishaan JaffandGitHub 4782d435ed [Fix] SCIM - Add SCIM PATCH and PUT Ops for Users (#11863)
* fix SCIM memberships Patch

* fixes for SCIM updates

* fixes for SCIM

* working provisioning for teams on SCIM

* working user patch / PUT ops SCIM

* fixes SCIM

* test_scim_v2_endpoints.py

* handle_existing_user_by_email

* fixes for provisioning SCIMUser

* fixes SCIM provisioning

* test scim v2

* fixes for linting

* fix _apply_patch_ops

* fixes code QA check for team membership checks
2025-06-18 16:24:55 -07:00
Ishaan JaffandGitHub ef336dcb38 [SCIM] Add Error handling for existing user on SCIM (#11862)
* fix handling existing user on SCIM

* test scim v2 fixes
2025-06-18 09:49:13 -07:00
Ishaan JaffandGitHub f247f1031b [Fix] Fix SCIM running patch operation case sensitivity (#11335)
* fix: fix SCIM patch op

* test: test SCIM patch op
2025-06-02 13:53:26 -07:00
Krish DholakiaandGitHub ef42461c1e Litellm fix GitHub action testing (#11163)
* test: add __init__.py files

* refactor: rename test folder to avoid naming conflict

* test: update workflows

* test: update tests

* test: update imports

* test: update tests

* test: remove unused import

* ci(test-litellm.yml): add pytest retry to github workflow

* test: fix test
2025-05-26 14:41:42 -07:00