curo1305
e678930b8d
feat(07-05): admin AI-config endpoints + load_provider_config_by_id + atomic is_active flip
- Add GET/PUT /api/admin/ai-config + GET /api/admin/ai-config/test-connection
- _ai_config_to_dict whitelist excludes api_key_enc (T-07-01)
- PUT: HKDF-encrypt api_key, atomic UPDATE SET is_active = (provider_id = target) (T-07-03)
- PUT: upsert with PROVIDER_DEFAULTS for omitted fields; audit log records fields_changed only (T-07-14)
- All 3 endpoints require get_current_admin (T-07-15)
- Add load_provider_config_by_id to services/ai_config.py (ignores is_active)
- Promote 3 xfail tests in test_admin_ai_config.py — all 3 pass
2026-06-04 23:19:40 +02:00
..
2026-05-22 08:53:28 +02:00
2026-06-04 23:19:40 +02:00
2026-06-04 23:15:48 +02:00
2026-06-04 23:15:48 +02:00
2026-06-04 23:15:48 +02:00
2026-06-04 23:15:49 +02:00
2026-06-02 16:10:35 +02:00
2026-06-02 16:10:35 +02:00
2026-05-28 17:10:52 +02:00