Fachdokumente nach docs/, Entscheidungen festgehalten

CLAUDE.md und README.md verweisen auf docs/, die Dateien lagen aber im
Wurzelverzeichnis. Verschoben.

docs/13-entscheidungen.md hält fest, wo die Dokumente sich widersprechen und
wie es aufgelöst wurde. Der wichtigste Punkt: 04-datenmodell.md verlangt eine
Regel, die jedes UPDATE auf CaseEntryVersion verwirft, 05-akten-und-vorlagen.md
verlangt, dass eine Umklassifizierung rückwirkend auf alle Versionen wirkt.
Beides zusammen geht nicht. Aufgelöst über einen Trigger, der die Tabelle
anhängend hält, aber das Anheben von minClearance zulässt.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Harlekin
2026-09-01 00:00:58 +02:00
co-authored by Claude Opus 5
commit 4446e3f0ac
16 changed files with 1919 additions and 0 deletions
+76
View File
@@ -0,0 +1,76 @@
# Arbeiten mit Claude Code
## Grundregel
Eine Phase aus `TASKS.md` pro Sitzung, nicht mehr. Lange Sitzungen verlieren den Faden und
produzieren Code, den niemand mehr prüft. Nach jeder Phase committen.
## Ablauf pro Phase
```
Lies CLAUDE.md, docs/03-auth-und-rechte.md und TASKS.md.
Wir machen Phase 1. Erstell mir zuerst einen Plan mit den Dateien, die du anlegen oder
ändern willst, und den offenen Entscheidungen. Baue noch nichts.
```
Plan durchsehen, dann:
```
Der Plan passt. Setz ihn um. Nach jeder Teilaufgabe: Tests laufen lassen und mir sagen,
was fertig ist.
```
Am Ende:
```
Hak die erledigten Punkte in TASKS.md ab und schreib mir eine kurze Zusammenfassung,
was jetzt funktioniert und was noch offen ist.
```
## Nützliche Einzelaufträge
**Sicherheitsdurchsicht nach einer Phase**
> Geh alle neuen Endpunkte und Server Actions durch. Prüf für jeden: findet die
> Berechtigungsprüfung serverseitig statt, steckt sie in der Datenbankabfrage statt als
> Nachfilter, und gibt es einen Test für den Fall ohne Berechtigung? Liste Lücken auf.
**Performance-Durchsicht**
> Prüf die neuen Ansichten gegen docs/09-performance-und-ux.md. Für jede Mutation:
> optimistisch oder nicht, und passt das zur Tabelle im Dokument? Für jede Route:
> gibt es eine loading.tsx mit passendem Skelett?
**Existenz-Leaks**
> Such nach Stellen, an denen die Existenz einer nicht sichtbaren Akte durchsickern kann:
> Trefferzahlen, Facettenzähler, Rückverweise auf Personalakten, Fehlermeldungen,
> Antwortzeiten. Schreib Tests für jede gefundene Stelle.
**Änderbarkeit prüfen**
> Geh alle Pfade durch, über die ein CaseEntry verändert werden kann. Prüf für jeden:
> wird eine CaseEntryVersion geschrieben, bleiben authorId und createdAt unangetastet,
> gibt es einen AuditLog-Eintrag, und wird die Karenzzeit serverseitig aus AppSetting
> geprüft statt aus dem Request? Liste Lücken auf.
**Wenn etwas komisch aussieht**
> Vergleich die Umsetzung mit docs/10-design-system.md. Wo hast du Radien, Schatten oder
> Farben benutzt, die dort nicht vorgesehen sind?
## Was du nicht delegieren solltest
- Discord-Application und Bot-Einladung: mach das selbst im Developer Portal
- Die echten `.env`-Werte, die gehören in den Dockge-Reiter und nicht ins Repository
- Das Anlegen des Stacks in Dockge und den Cloudflare-Tunnel
- Die erste Wiederherstellung eines Backups
- Die Entscheidung, welche Discord-Rolle welche Stufe bekommt
## Wenn Claude Code sich verrennt
Neue Sitzung starten und den Kontext neu setzen, statt in der alten weiterzudiskutieren:
> Lies CLAUDE.md und docs/<passendes Dokument>. Der aktuelle Stand von <Datei> macht <X>,
> soll aber <Y> machen. Erklär mir zuerst, warum der jetzige Stand nicht passt,
> bevor du ihn änderst.