Doku: R4 Dokumentations-Review umgesetzt

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-28 15:04:56 +02:00
parent 6ff463b7ef
commit 014b11abd2
4 changed files with 203 additions and 20 deletions
+82 -16
View File
@@ -18,8 +18,8 @@ Die GUI gliedert sich in zwei feste Tabs:
Weiterhin **nicht** enthalten sind ein Historien-Tab, eine Datenbankansicht und ein
Kosten-Tracking — diese Ausbauten sind für spätere Stufen vorbehalten.
Der headless Batch-/Scheduler-Betrieb über `--headless` bleibt der einzige Weg,
PDF-Dateien automatisiert zu verarbeiten.
Für unbeaufsichtigte, geplante Läufe (z. B. Windows Task Scheduler) bleibt
`--headless` der empfohlene Weg.
---
@@ -468,13 +468,25 @@ in den Lauf ein. Vor dem Start muss die Konfiguration daher gespeichert sein.
- Nach jeder abgeschlossenen Datei erscheint ohne manuellen Refresh eine neue Zeile mit
den fünf Spalten **Status-Icon**, **Originaldateiname**, **Neuer Dateiname**, **Datum**
und **Dauer**.
- Für Fehler- und Übersprungen-Fälle wird bei den Spalten „Neuer Dateiname" und „Datum"
ein Gedankenstrich `—` eingetragen.
- Die Status-Icons folgen: ✅ erfolgreich, ⚠️ fehlgeschlagen (retryable),
❌ fehlgeschlagen (permanent), ⏭️ übersprungen.
- Ein Klick auf eine Zeile zeigt die KI-Begründung im Seitenbereich. Liegt keine
Begründung vor, erscheint der Hinweistext „Für diesen Eintrag liegt kein KI-Reasoning
vor.".
- Für `FAILED_*`-Zeilen und `SKIPPED_FINAL_FAILURE`-Zeilen wird in den Spalten
„Neuer Dateiname" und „Datum" ein Gedankenstrich `—` eingetragen.
`SKIPPED_ALREADY_PROCESSED`-Zeilen zeigen in der Spalte „Neuer Dateiname" den
historischen Zieldateinamen aus dem letzten erfolgreichen Lauf; „Datum" bleibt `—`.
- Status-Icons (Unicode-Zeichen mit Farbe):
| Symbol | Farbe | Bedeutung |
|--------|-------|-----------|
| `✓` | Grün | Erfolgreich |
| `↻` | Orange | Fehlgeschlagen (wiederholbar) |
| `×` | Rot | Fehlgeschlagen (permanent) |
| `≡` | Blau | Übersprungen (bereits erfolgreich verarbeitet) |
| `⊘` | Grau | Übersprungen (endgültig fehlgeschlagen) |
| `⟳` | Grau | Zurückgesetzt wartet auf nächsten Lauf |
- Ein Klick auf eine Zeile öffnet den Detailbereich rechts. Für `FAILED_*`-Einträge
zeigt der Detailbereich eine übersetzte Fehlermeldung (Präfix `⚠`) anstelle des
KI-Reasonings. Liegt weder Reasoning noch Fehlermeldung vor, erscheint der
Hinweistext „Für diesen Eintrag liegt kein KI-Reasoning vor.".
- Nach Laufende erscheint die Zusammenfassung `X erfolgreich, Y fehlgeschlagen,
Z übersprungen` im Meldungs- und Zusammenfassungsbereich.
@@ -604,18 +616,43 @@ Das Panel enthält drei Bereiche:
(preserveRatio=true). Keine Scrollbalken, keine manuelle Zoom-Einstellung.
- Das Rendering erfolgt direkt über Apache PDFBox bei 120 DPI.
### KI-Begründung
### KI-Begründung und Fehlertext
Der mittlere Bereich zeigt das KI-Reasoning des ausgewählten Eintrags. Liegt kein
Reasoning vor (z. B. bei Übersprungen-Einträgen), erscheint der Hinweis
Der mittlere Bereich zeigt das KI-Reasoning des ausgewählten Eintrags.
Für Einträge mit Status `FAILED_*` wird sofern kein KI-Reasoning vorliegt
stattdessen eine übersetzte Fehlermeldung angezeigt (Präfix ``), zum Beispiel:
- „PDF enthält keinen lesbaren Text. Möglicherweise handelt es sich um einen Scan
ohne Texterkennung (OCR). Eine automatische Benennung ist nicht möglich."
- „KI-Dienst: Ungültiger API-Schlüssel. Bitte in den Einstellungen prüfen."
- „KI-Dienst nicht erreichbar. Bitte Verbindung und Konfiguration prüfen."
Für `SKIPPED_ALREADY_PROCESSED`-Einträge erscheint der Zeitpunkt des letzten
erfolgreichen Verarbeitungslaufs, sofern er in der Datenbank vorliegt.
Liegt weder Reasoning noch Fehlermeldung vor, erscheint der Hinweis
„Für diesen Eintrag liegt kein KI-Reasoning vor.".
### Editierbarer Dateiname
- Unterhalb des Reasoning-Bereichs befindet sich ein **editierbares Textfeld** mit
dem aktuellen Dateinamen des Eintrags.
- Das Feld kann direkt bearbeitet werden. Die Eingabe wird **live validiert**
(Formatprüfung `YYYY-MM-DD - Titel.pdf`, Titelzeichen, Länge).
Unterhalb des Reasoning-Bereichs befindet sich ein **editierbares Textfeld** mit
dem Dateinamen des ausgewählten Eintrags (ohne `.pdf`-Erweiterung; `.pdf` wird als
nicht editierbares Label daneben angezeigt).
#### Aktivitätszustand je Zeilenstatus
| Zeilenstatus | Textfeld-Verhalten |
|---|---|
| Kein Eintrag selektiert | Leer, deaktiviert |
| `SUCCESS` | Editierbar; letzter gespeicherter Name vorausgefüllt. Ermöglicht Umbenennung der vorhandenen Zieldatei. |
| `SKIPPED_ALREADY_PROCESSED` | Editierbar (sofern historischer Dateiname vorhanden). Ermöglicht Umbenennung der vorhandenen Zieldatei. |
| `FAILED_RETRYABLE`, `FAILED_PERMANENT`, `SKIPPED_FINAL_FAILURE` | Editierbar; Feld leer. Erlaubt Eingabe eines manuellen Dateinamens für eine direkte Kopie der Quelldatei. |
| Zurückgesetzt (``) | Deaktiviert |
| Lauf aktiv | Vollständig deaktiviert |
Das Feld kann direkt bearbeitet werden. Die Eingabe wird **live validiert**
(Formatprüfung `YYYY-MM-DD - Titel.pdf`, Titelzeichen, Länge).
- Fehlerhafte Eingaben werden direkt unter dem Feld als rote Meldung angezeigt.
- **Speichern:** Der Button **„Übernehmen"** führt die Umbenennung durch atomare
Dateisystem- und DB-Transaktion inkl. automatischer Rollback bei Fehler.
@@ -639,3 +676,32 @@ Reasoning vor (z. B. bei Übersprungen-Einträgen), erscheint der Hinweis
| Keine Koordination mit parallelen headless Läufen | Ein gleichzeitiger externer headless Lauf wird nicht technisch geblockt. Schreibkonflikte sind nicht ausgeschlossen, wenn dieselbe `.properties`-Datei parallel genutzt wird |
| GUI nur für Windows | Die GUI wird offiziell nur unter Windows unterstützt; der headless Betrieb ist für Windows Server geeignet |
| Ergebnisliste nicht persistent | Die Ergebnisliste im Verarbeitungslauf-Tab existiert nur für den aktuellen Programmstart; nach Neustart ist die Liste leer |
| Einzelinstanz-Schutz | Wird die Anwendung ein zweites Mal gestartet, während bereits eine Instanz läuft (auch wenn diese im System-Tray minimiert ist), beendet sich die neue Instanz sofort ohne Hinweisfenster |
---
## 15. System-Tray
Wird das Hauptfenster über das Schließen-Symbol (oder Alt+F4) geschlossen, ohne dass
ungespeicherte Änderungen oder ein aktiver Verarbeitungslauf vorliegen, **minimiert
sich die Anwendung in den Windows System-Tray** statt sich zu beenden. Das Fenster
bleibt im Hintergrund aktiv und ist über das Tray-Icon wieder erreichbar.
### 15.1 Tray-Icon-Menü
Ein **Rechtsklick** auf das Tray-Icon öffnet ein Kontextmenü:
| Eintrag | Wirkung |
|---------|---------|
| **Öffnen** | Bringt das Hauptfenster in den Vordergrund |
| **Beenden** | Beendet die Anwendung vollständig |
Ein **Doppelklick** auf das Tray-Icon hat denselben Effekt wie „Öffnen".
### 15.2 Sonderfälle beim Schließen
| Situation | Verhalten |
|---|---|
| Ungespeicherte Änderungen | Schutzdialog erscheint zuerst (Speichern / Verwerfen / Abbrechen); erst nach Auflösung wird in den Tray minimiert |
| Aktiver Verarbeitungslauf | Hinweisdialog erscheint (Abschnitt 13); nach Soft-Stop oder Abschluss kann in den Tray minimiert werden |
| System-Tray nicht verfügbar | Fenster wird beim Schließen wie ohne Tray-Support behandelt; der Schutzdialog für ungespeicherte Änderungen bleibt aktiv |