- Shipped
- 16. Juli 2026 um 17:58 UTC
- Author
- Kamo
- Commit
- a9a6652
Per-Mitglied UI-Einstellungen (nav Layout, Hex-Head-Größen, etc.) werden gespeichert ein Zeile pro (member_id, pref_key) in MEMBER_UI_PREFERENCES, bewacht durch die einzigartige constraint UK_MEMBER_UI_PREF_KEY. "Reset to Standard" weich-deletiert das Navi Layout (DELETE -- is_active=false), lässt aber die Zeile die Taste besetzen. **************** schaute die Reihe mit dem Aktiven auf finder, verpasste die verweilende inaktive Reihe, baute eine brandneue Reihe und INSERTed it -" duplikat-Tastenverletzung auf UK_MEMBER_UI_PREF_KEY -- HTTP 500. Die kamo-interne Frontend schluckt die 500 (optimistische .catch()), also des Mitglieds neu bestellte Navi schien in der Sitzung zu speichern, aber nie bestanden, und jedes Login zurückgesetzt auf das Standard-Layout war das einzige Pref, das dies traf, weil es ist der einzige Schlüssel mit einem Reset - DELETE Pfad. Fix: Die Zeile mit ihrem natürlichen Schlüssel nach oben schauen, unabhängig von is_aktiv (neu SecurityService-local **************** so upsert rerecsrekt und reaktiviert die weich-gelöschte Reihe (UPDATE von PK) anstatt kollidierende Duplikat. Liest (Liste/get) absichtlich aktiv bleiben. Mitglieder bereits stecken Selbstheilung auf ihre nächste Neuordnung. Keine Schema/Shared-lib-Änderung; SecurityService nur umschichten.