feat(diagnostic): Anhang-Limit einstellbar + Datum/Uhrzeit bei Gedanken
Zwei Dinge, die bisher nur im Code bzw. nur in der DB standen. Anhang-Limit (Einstellungen → System & Wartung): - Das Limit war eine Env-Variable mit 20 MB Default — zum Anheben musste man die .env editieren und das Brain neu starten. Jetzt steht es in runtime.json und das Brain liest es bei JEDEM Upload neu: Aenderung greift sofort. - Reihenfolge: runtime.json > ENV > Default. Anders als beim OpenAI-Endpunkt gewinnt hier NICHT die .env — dort erzwingt ein Docker-Port-Mapping das, hier gibt es keinen solchen Zwang, und eine Einstellung die nichts tut waere schlimmer als keine. - Default von 20 auf 64 MB. Genau so viel holt die App auch auf ausdruecklichen Tipp noch herunter (TAP_DL_MAX_BYTES); darueber warnt die UI, verbietet es aber nicht — der Anhang liegt dann sauber auf dem Server, ist mobil nur nicht mehr ladbar. - Neuer Endpunkt GET /attachments/limit. Das fest eingetippte "max 20 MB pro Datei" im HTML ist weg — es stimmte nach jeder Aenderung nicht mehr. - Die Fehlermeldung nennt jetzt MB statt Bytes und sagt, wo die Einstellung ist. Datum/Uhrzeit bei Gedanken: - created_at/updated_at lagen schon immer in der DB und wurden ausgeliefert — nur nie angezeigt. Jede Zeile zeigt jetzt "angelegt <Zeit>" und, falls abweichend, "geaendert <Zeit>" plus ein relatives "(vor 3 Std)". Damit sieht man auf den ersten Blick, was der letzte Eintrag war. - Sortier-Dropdown: nach Typ gruppiert (wie bisher) oder nach Anlage/Aenderung auf- und absteigend. Bei Zeit-Sortierung wird die Liste flach dargestellt — man will sehen was zuletzt passiert ist, nicht in welche Schublade es gehoert. - Zeitraum-Filter (🕒) mit von/bis, umschaltbar zwischen angelegt und geaendert, plus Schnellwahl Heute / 7 / 30 Tage. Gilt auch fuer Such-Treffer, damit "suche X, aber nur letzte Woche" geht. Zuklappen schaltet ihn aus, und das ✕-Zuruecksetzen raeumt ihn mit auf (sonst filtert er unsichtbar weiter). Beides gegen den echten Code getestet: 7 Faelle fuers Limit (inkl. kaputter runtime.json und einem 50-MB-PDF an beiden Grenzen), 10 fuer Sortierung und Zeitraum. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -398,6 +398,19 @@ def memory_delete(point_id: str):
|
||||
|
||||
# ─── Memory-Anhaenge ──────────────────────────────────────────────────
|
||||
|
||||
@app.get("/attachments/limit")
|
||||
def memory_attachments_limit():
|
||||
"""Aktuelles Groessen-Limit fuer Memory-Anhaenge.
|
||||
|
||||
Die Oberflaechen zeigen damit die ECHTE Zahl an statt eines fest
|
||||
eingetippten "max 20 MB" — das stand vorher im HTML und stimmte nicht mehr,
|
||||
sobald jemand das Limit anhob.
|
||||
"""
|
||||
import memory_attachments as mem_att
|
||||
limit = mem_att.max_bytes()
|
||||
return {"maxBytes": limit, "maxMb": round(limit / 1024 / 1024, 1)}
|
||||
|
||||
|
||||
@app.get("/memory/{point_id}/attachments")
|
||||
def memory_attachments_list(point_id: str):
|
||||
"""Liste der Anhaenge zum Memory. Source-of-Truth ist das Payload
|
||||
|
||||
Reference in New Issue
Block a user