Phase 3, erster Teil: Vorlagen-Bausteine und Schwärzung

Entschieden und festgehalten: jede Akte trägt Kurzvermerke und Dokumente, die
Fallakte zusätzlich ihre Abschnitte. Die Trennung aus docs/05 bleibt damit
bestehen.

Eine Vorlage ist jetzt eine geordnete Liste von Bausteinen. Manche nehmen eine
Eingabe entgegen, andere liefern festen Text mit Platzhaltern. Damit tragen
dieselbe Struktur ein Vorfallsbericht, der fast nur aus Eingaben besteht, und
ein Sonderarbeitsvertrag, der fast nur aus Paragraphen und Unterschriftenzeilen
besteht. Eine neue Dokumentart bleibt ein Datensatz, kein Deployment.

Der Schwärzungs-Parser gibt Segmente zurück, nicht den vollen Text mit einem
Sichtbarkeits-Flag: was der Client ausblenden müsste, hat er dann schon. Die
Balkenlänge wird auf ein Raster von acht Zeichen gerundet, sonst verrät sie,
wie lang der geschwärzte Name war.

Ein Test vergleicht den TypeScript-Parser gegen die SQL-Funktion
strip_redactions aus der Migration. Laufen die beiden auseinander, findet die
Suche einen Begriff, den die Ansicht verbirgt — und der Treffer allein verrät
ihn dann.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Harlekin
2026-09-02 12:39:35 +02:00
co-authored by Claude Opus 5
parent 5cbdabf337
commit d160741237
6 changed files with 410 additions and 7 deletions
+5 -6
View File
@@ -61,13 +61,12 @@ Das ist der schwierigste Teil. Wenn er steht, ist der Rest Formularbau.
## Phase 3 — Vorlagen und Abschnitte
- [ ] **Zuerst entscheiden**: gemeinsame Dokumentebene für Dokumentarten jenseits der
Fallakte (Bußgeld, Vertrag, Beurteilung). Bewertung und Empfehlung in
`docs/13-entscheidungen.md`, Abschnitt „Offen: Dokumentarten über die Fallakte hinaus"
- [ ] Feldtypen für Textkörper-Vorlagen ergänzen: fester Fließtext, Überschrift,
- [x] Entschieden: jede Akte trägt Kurzvermerke und Dokumente, die Fallakte zusätzlich
Abschnitte. Siehe `docs/13-entscheidungen.md`
- [x] Feldtypen für Textkörper-Vorlagen ergänzen: fester Fließtext, Überschrift,
Platzhalter, Unterschriftenzeile — der Sonderarbeitsvertrag ist kein Formular
- [ ] `CaseTemplate` mit Feldtypen aus `docs/05-akten-und-vorlagen.md`
- [x] `CaseTemplate` mit Feldtypen aus `docs/05-akten-und-vorlagen.md`
- [x] Aktenzeichen-Muster je Vorlage: Präfix und Stellenzahl, Nummernkreis je Präfix und Jahr
- [ ] Feld „Foundation-Freigabe" als gewöhnliches Vorlagenfeld, ohne Wirkung auf den Zugriff
- [ ] Vorlagen-Editor im Adminbereich, versioniert, mit Vorschau
@@ -75,7 +74,7 @@ Das ist der schwierigste Teil. Wenn er steht, ist der Rest Formularbau.
- [ ] Versionierung mit Diff-Ansicht
- [ ] Konflikterkennung über mitgesendete Version, 409 mit Vergleichsansicht
- [ ] `minClearance` pro Feld, serverseitige Ersetzung durch Platzhalter
- [ ] Schwärzungs-Auszeichnung im Freitext, Parser in `lib/redaction.ts`
- [x] Schwärzungs-Auszeichnung im Freitext, Parser in `lib/redaction.ts`
- [ ] Seed mit vier Startvorlagen
## Phase 4 — Personalakten und Verknüpfungen