Changeset 0.28.0.1 (#173)

This commit is contained in:
2026-03-11 14:45:37 +00:00
parent 93c72daadf
commit 58313f7e31
57 changed files with 5139 additions and 3206 deletions

55
docs/ICD/profile.md Normal file
View File

@@ -0,0 +1,55 @@
# User Profile & Settings
### Profile
```
GET /profile → profileResponse
PUT /profile ← { "display_name", "email" }
```
```json
{
"id": "uuid",
"username": "jdoe",
"email": "jdoe@example.com",
"display_name": "Jane Doe",
"role": "user|admin",
"avatar_url": "...",
"created_at": "...",
"last_login": "..."
}
```
### Avatar
```
POST /profile/avatar ← multipart/form-data (field: "avatar")
DELETE /profile/avatar
```
### Password
```
POST /profile/password
```
```json
{
"current_password": "...",
"new_password": "..."
}
```
On password change, the UEK is re-wrapped with the new password
(BYOK keys remain accessible without re-encryption).
### App Settings
```
GET /settings → { "settings": {...} }
PUT /settings ← { "theme", "editor_keybindings", ... }
```
User-level preferences (theme, keybindings, default model, etc.).
---