Files
kite/.planning/phases/08-stack-upgrade-backend-decomposition/08-04-SUMMARY.md
T

1.2 KiB

Plan 08-04 Summary — Admin API Decomposition

Status: Complete
Requirements: CODE-01, CODE-08
Date: 2026-06-12

What Was Done

  • Added validate_provider_id() to backend/services/ai_config.py (D-11 migration)
  • Created backend/api/admin/ package: shared.py, users.py, quotas.py, ai.py, __init__.py
  • __init__.py aggregates with prefix="/api/admin" — 13 routes total
  • All sub-routers declare no prefix (D-04)
  • _user_to_dict shared helper in shared.py (T-02-27 / SEC-07 field whitelist)
  • Both SystemAiConfigUpdate and TestConnectionRequest call validate_provider_id() (CODE-08)
  • Deleted backend/api/admin.py monolith after 54-test URL regression passed

Test Results

  • tests/test_admin_api.py: 27 passed
  • tests/test_cloud.py + tests/test_admin_ai_config.py: 27 passed
  • Full suite: 405 passed (1 pre-existing docx env skip)

Admin Paths (unchanged)

/api/admin/users, /api/admin/users/{id}, /api/admin/users/{id}/status, /api/admin/users/{id}/quota, /api/admin/users/{id}/ai-config, /api/admin/users/{id}/password-reset, /api/admin/topics, /api/admin/ai-config, /api/admin/ai-config/models, /api/admin/ai-config/test-connection