Dokumentation V3.2: Scheduler-Ausnahme, Betriebsdoku und GUI-Bedienanleitung
CLAUDE.md: - Unverrückbare Technikvorgaben: 'keine Dauerlauf-Anwendung' und 'kein interner Scheduler' mit Ausnahme-Hinweis auf GUI-Scheduler annotiert - Modulstruktur: pdf-umbenenner-adapter-in-scheduler ergänzt - Neuer Abschnitt 'Scheduler-Ausnahme (ab V3.2)' mit allen abweichenden Regeln - Aktiver Implementierungsstand: V3.2 als abgeschlossen dokumentiert - Konfigurationsparameter: scheduler.enabled und scheduler.interval.seconds ergänzt - Nicht-Ziele: 'keine interne Scheduler-Logik' mit GUI-Scheduler-Ausnahme annotiert docs/betrieb.md: - 'Umfang der GUI': von drei auf fünf Tabs aktualisiert (Scheduler + Verlauf ergänzt) - Neuer Abschnitt 'Automatischer Scheduler' mit Parametern, Autostart, Sperr- verhalten und Schließ-Verhalten - Optionale Parameter: scheduler.enabled und scheduler.interval.seconds ergänzt - Systemgrenzen: 'Kein interner Scheduler' auf headless-Kontext eingeschränkt docs/gui-bedienanleitung.md: - Abschnitt 1: fünf statt vier Tabs; Tab 3 Scheduler neu; Verlauf zu Tab 4, Prompt zu Tab 5; alle Abschnitt-Querverweise aktualisiert - Abschnitte 14-20 zu 15-21 umnummeriert - Neuer Abschnitt 14 'Tab Scheduler' mit Start/Stop, Statusanzeige, Countdown, letztem Lauf, Autostart-Fehler, Sperrbegründungen und Schließ-Dialog-Hinweis Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -56,8 +56,8 @@ Wenn Dokumente fehlen, unklar sind oder sich widersprechen, nicht raten und kein
|
||||
- `--config <pfad>` steht für GUI und headless zur Verfügung
|
||||
- kein Webserver
|
||||
- kein Applikationsserver
|
||||
- keine Dauerlauf-Anwendung
|
||||
- kein interner Scheduler
|
||||
- keine Dauerlauf-Anwendung (Ausnahme: GUI-Modus mit aktivem Scheduler, s. Scheduler-Ausnahme)
|
||||
- kein interner Scheduler (Ausnahme: optionaler GUI-Scheduler ab V3.2, s. Scheduler-Ausnahme)
|
||||
- das Shade-JAR bleibt das primäre Distributionsartefakt
|
||||
- zusätzlicher nativer Windows-Installer (MSI) ab V3.0 via Maven-Profil `release` (jpackage, WiX Toolset 3.x im PATH erforderlich); der Normalbuild `mvn clean verify` bleibt vom Profil unberührt und benötigt kein WiX
|
||||
- Log4j2 für Logging
|
||||
@@ -77,9 +77,28 @@ Wenn Dokumente fehlen, unklar sind oder sich widersprechen, nicht raten und kein
|
||||
- `pdf-umbenenner-application`
|
||||
- `pdf-umbenenner-adapter-in-cli`
|
||||
- `pdf-umbenenner-adapter-in-gui`
|
||||
- `pdf-umbenenner-adapter-in-scheduler`
|
||||
- `pdf-umbenenner-adapter-out`
|
||||
- `pdf-umbenenner-bootstrap`
|
||||
|
||||
## Scheduler-Ausnahme (ab V3.2)
|
||||
|
||||
Ab V3.2 enthält der GUI-Modus einen optionalen internen Scheduler, der periodisch
|
||||
automatische Verarbeitungsläufe anstößt. Die folgenden Regeln gelten abweichend von
|
||||
den allgemeinen Leitplanken:
|
||||
|
||||
- Der Scheduler ist **ausschließlich im GUI-Modus** verfügbar. Im headless Betrieb werden
|
||||
`scheduler.enabled` und `scheduler.interval.seconds` vollständig ignoriert.
|
||||
- Das Modul `pdf-umbenenner-adapter-in-scheduler` erfüllt eine gemischte Rolle als
|
||||
technischer Treiber und Adapter. Dies ist ein bewusster Architekturkompromiss, kein
|
||||
Architekturbruch.
|
||||
- `pdf-umbenenner-adapter-in-scheduler` enthält **kein JavaFX**.
|
||||
- **Kein WatchService:** Der Scheduler löst reguläre Verarbeitungsläufe periodisch aus;
|
||||
er nutzt keinen Dateisystem-Event-Mechanismus.
|
||||
- Das bestehende Datenbankschema bleibt in V3.2 unverändert; keine
|
||||
Scheduler-spezifische Schemaerweiterung.
|
||||
- Token- und Kostentracking sind nicht Bestandteil von V3.2.
|
||||
|
||||
## Architekturregeln
|
||||
- Strikte **hexagonale Architektur / Ports and Adapters**
|
||||
- Abhängigkeiten zeigen immer **nach innen**
|
||||
@@ -151,6 +170,8 @@ Der Basisstand V2.0 (JavaFX-GUI als Standardstart, Konfigurationseditor, technis
|
||||
|
||||
Verhaltensänderungen seit V2.9: Die GUI startet maximiert, und die zuletzt geladene Konfigurationsdatei wird beim Start automatisch wieder geladen; existiert sie nicht mehr, startet die GUI ohne Fehlermeldung mit dem Willkommenstext.
|
||||
|
||||
**V3.2 ist abgeschlossen.** Der GUI-Modus wurde um einen optionalen automatischen Scheduler erweitert (neuer Tab „Scheduler"). Der Scheduler startet periodisch Verarbeitungsläufe; Intervall und Autostart sind konfigurierbar. Während der Scheduler aktiv ist, sind der Konfigurations-Tab und das manuelle Starten von Läufen gesperrt. Im headless Betrieb werden Scheduler-Parameter vollständig ignoriert.
|
||||
|
||||
Die fachliche Kernverarbeitung des PDF-Umbenenners bleibt unverändert.
|
||||
|
||||
## Statussemantik
|
||||
@@ -301,6 +322,8 @@ Verbindlich zweckmäßige Parameter:
|
||||
- `log.ai.sensitive` – sensible KI-Logausgabe freischalten (Boolean, Default: `false`)
|
||||
- `runtime.lock.file` – Lock-Datei (optional)
|
||||
- `log.directory` – Log-Verzeichnis (optional)
|
||||
- `scheduler.enabled` – Scheduler im GUI-Modus aktivieren (Boolean, Default: `false`; wird im headless Betrieb vollständig ignoriert)
|
||||
- `scheduler.interval.seconds` – Intervall zwischen automatischen Läufen in Sekunden (Integer >= 30, Pflicht wenn `scheduler.enabled=true`; wird im headless Betrieb vollständig ignoriert)
|
||||
|
||||
Pro Provider-Familie existiert ein eigener Parameter-Namensraum:
|
||||
|
||||
@@ -339,7 +362,7 @@ Verbindlicher Ablauf:
|
||||
- keine OCR innerhalb der Java-Anwendung
|
||||
- keine DMS-Funktionalität
|
||||
- kein menschlicher Review-Workflow in der Anwendung
|
||||
- keine interne Scheduler-Logik
|
||||
- keine interne Scheduler-Logik außerhalb des optionalen GUI-Schedulers (s. Scheduler-Ausnahme)
|
||||
- keine Architekturbrüche
|
||||
- keine neuen Bibliotheken oder Frameworks ohne klare Notwendigkeit und Begründung
|
||||
- **keine** automatische Fallback-Umschaltung zwischen KI-Providern
|
||||
|
||||
Reference in New Issue
Block a user