Kein Löschen von Akten, Hochstufen bei eigener Stufe gedeckelt

Zwei Festlegungen, beide in docs/13-entscheidungen.md begründet.

case.delete ist gestrichen. Der Lebenszyklus kennt ARCHIVED und SEALED, und
eine Akte mit Verlaufseinträgen liesse sich ohnehin nicht hart löschen, weil
CaseEntry nach Regel 2 unlöschbar ist und der Fremdschlüssel das Kaskadieren
blockiert. Das ist die konsequente Fortsetzung von Regel 2 eine Ebene höher.

Niemand klassifiziert eine Akte höher als die eigene Freigabestufe. Sonst
entstehen Akten, die ihr Urheber nicht mehr sehen kann, und die Frage "wer
konnte das lesen" wird im Nachhinein schwer beantwortbar.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Harlekin
2026-09-01 21:34:29 +02:00
co-authored by Claude Opus 5
parent 2003a3b75f
commit e8c5efc214
4 changed files with 26 additions and 4 deletions
+2 -2
View File
@@ -46,8 +46,8 @@ Das ist der schwierigste Teil. Wenn er steht, ist der Rest Formularbau.
- [ ] Vermerk anlegen, optimistisch, mit clientseitiger UUIDv7
- [ ] Statusübergänge mit Rechteprüfung und automatischem Systemeintrag
- [ ] Schreibgrenzen nach `docs/03-auth-und-rechte.md`: keine Akte über der eigenen Stufe
anlegen, Ändern und Löschen nur mit Lesezugriff, Klassifizierung nachträglich änderbar
bis zur eigenen Stufe
anlegen, Ändern nur mit Lesezugriff, Klassifizierung nachträglich änderbar bis zur
eigenen Stufe. Kein Löschen von Akten, nur `ARCHIVED` und `SEALED`
- [ ] Umklassifizierung erzeugt `SYSTEM`-Eintrag und `AuditLog` mit alter und neuer Stufe
- [ ] Negativtests dazu: Stufe 2 kann keine Stufe-4-Akte anlegen, nicht ändern, nicht
hochstufen, auch nicht über einen direkten Aufruf der Server Action