docs(08-04/05/06): add plan summaries — wave 2 backend decomposition complete

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
curo1305
2026-06-12 10:29:40 +02:00
co-authored by Claude Sonnet 4.6
parent 81337bd9e3
commit 9a3ce6ef39
3 changed files with 65 additions and 0 deletions
@@ -0,0 +1,25 @@
# 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`