Files
planer2/daten/RAG/uploads.md
2026-07-29 15:19:41 +02:00

76 lines
2.4 KiB
Markdown

<!-- titel -->
Uploads
----------------------------------------
<!-- art -->
kern
----------------------------------------
<!-- ziel -->
Verwaltet temporäre Datei-Uploads im Chat und persistente Batch-Uploads im Admin-Bereich
----------------------------------------
<!-- regeln -->
- Upload-Größenlimit liefert Status 413
- Admin-Uploads erfordern Editor-Rolle
- CSRF-Token bei Admin-Upload geprüft
- Temporäre Uploads werden nach Ablauf gelöscht
- Batch-Reports als JSON und Markdown verfügbar
- Upload-Grenzen werden für das Frontend bereitgestellt
- limits enthält erlaubte Dateitypen, Grenzen pro Sitzung, Dateigröße und Ablaufzeit
----------------------------------------
<!-- funktion -->
Berechtigungsmodus ändern
<!-- ziel -->
Ändert den Berechtigungsmodus eines Chat-Uploads auf einen erlaubten Wert
<!-- regeln -->
- PATCH oder POST erforderlich
- clientId aus Request-Cookie ermittelt
- authorityMode aus Body gelesen
- Unbekannter Modus führt zu Fehler
<!-- testen -->
- PATCH auf Chat-Upload-Endpunkt mit authorityMode im Body senden
- Erfolg: status ok und aktualisierter Upload zurück
----------------------------------------
<!-- funktion -->
Datei hochladen
<!-- ziel -->
Speichert eine Datei und gibt den aktuellen Upload-Status zurück
<!-- regeln -->
- Nur eine Datei pro Anfrage erlaubt
- Dateityp und Größe werden geprüft
- Upload wird mit Client-ID verknüpft
- Fehler werden als JSON zurückgegeben
- Größenlimit-Überschreitung liefert Status 413
<!-- testen -->
- POST chat-uploads mit Datei im Feld file
- Antwort enthält status ok und Upload-ID
- Anfrage ohne Datei gibt Fehler zurück
----------------------------------------
<!-- funktion -->
Upload entfernen
<!-- ziel -->
Entfernt einzelne oder alle Uploads aus der Sitzung
<!-- regeln -->
- DELETE entfernt Upload mit ID
- POST entfernt alle Uploads der Sitzung
- Unbekannte ID gibt Status missing
- Antwort enthält aktualisierte Upload-Liste
<!-- testen -->
- DELETE auf Upload-ID
- Status ok in Antwort
- Upload nicht mehr in Liste
- POST auf Leeren-Button
- Uploads-Liste leer
----------------------------------------
<!-- funktion -->
Uploads auflisten
<!-- ziel -->
Zeigt verfügbare Uploads und deren Grenzen an
<!-- regeln -->
- Löscht abgelaufene Uploads des Clients
- Liefert enabled-Flag
- Liefert Uploads des Clients
- Liefert alle Grenzen für das Frontend
<!-- testen -->
- Anfrage an Chat-Uploads senden
- JSON-Antwort prüfen
- enabled, uploads und limits vorhanden