feat(mgmt): add outbound SCIM configuration management wrapper#1615
feat(mgmt): add outbound SCIM configuration management wrapper#1615dorsha wants to merge 1 commit into
Conversation
Adds descope.management.OutboundSCIM (sync + async) with create_configuration, update_configuration, delete_configuration, load_configuration, load_all_configurations, and set_enabled. Related: descope/etc#15987 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
🐕 Review complete — View session on Shuni Portal 🐾 |
🐕 Suggested ReviewersThe review assignment focuses on covering different areas of the change, including core management logic, asynchronous components, and integration points. Selected reviewers have committed to relevant files and possess expertise necessary for comprehensive code review.
Suggested by Shuni based on git history and PR context. Names are not @-mentioned to avoid notifying anyone — request a review from whoever fits best. |
There was a problem hiding this comment.
🐕 Shuni's Review
Adds the OutboundSCIM management wrapper (sync + async) with CRUD + set_enabled, wired into mgmt/mgmt_async, mirroring the outbound_application conventions.
No issues found — good bones! Sync/async parity is clean, bodies serialize to camelCase correctly, load-by-id vs load-all paths are consistent with the tests, and management-key gating is in place. Woof!
Coverage reportThe coverage rate went from
Diff Coverage details (click to unfold)descope/management/_outbound_scim_base.py
descope/management/common.py
descope/management/outbound_scim_async.py
descope/management/outbound_scim.py
descope/mgmt.py
descope/mgmt_async.py
|
Summary
descope.management.OutboundSCIMmodule (sync + async) withcreate_configuration,update_configuration,delete_configuration,load_configuration,load_all_configurations,set_enabledcalling the new/v1/mgmt/outbound/scim/*endpoints on the backend (descope/backend#1747).DescopeClient.mgmt.outbound_scim(and its async counterpart).outbound_applicationwrapper conventions (snake_case Python, camelCase wire, dict-typed responses).Related: descope/etc#15987
Test plan
pytest tests/management/test_outbound_scim.py— 34 passed (17 tests × sync+async)pytest tests/management/— 681 passed, no regressionsruff check descope/ tests/management/test_outbound_scim.pycleanruff format --checkclean🤖 Generated with Claude Code