Commit Graph

35 Commits

Author SHA1 Message Date
marcus 8884d15e69 Ändere Standard-Default für max.text.characters von 5000 auf 1000
Der bisherige Standard-Default von 5000 Zeichen löste gemäß Spezifikation
sofort eine starke Warnung in der GUI aus (Schwellenwert: >3000).
Dies ist nicht benutzerfreundlich.

Der neue Standard-Default ist 1000 Zeichen (unkritisch laut Spec).
Das entspricht einer besseren Balance zwischen KI-Input-Größe und
Benutzerwarnung beim Start.

Änderungen:
- GuiConfigurationTemplateFactory: Standardvorlage auf 1000 geändert
- Alle *.properties-Beispieldateien aktualisiert
- Dokumentation in gui-bedienanleitung.md ergänzt
- Betroffene Tests angepasst (etwa 10 Testdateien)
- Alle 206 Tests bestehen nach der Änderung

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-22 12:44:09 +02:00
marcus 3e1f59fd12 Fix Windows-Konsolen-Encoding für Log-Ausgaben (UTF-8 vs. CP850)
- log4j2.xml: charset="UTF-8" explizit auf beiden PatternLayout-Elementen
  (Console + RollingFile), damit Log4j2 unabhängig vom JVM-Standard UTF-8
  schreibt
- Batch-Dateien: chcp 65001 vor dem EXE-Aufruf, damit die Windows-Konsole
  die UTF-8-Bytes korrekt anzeigt
- docs/betrieb.md: neuer Abschnitt "Konsolen-Encoding unter Windows" mit
  Hinweis auf chcp 65001 und -Dstdout.encoding=UTF-8 für den direkten
  Standalone-JAR-Start

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-22 12:13:50 +02:00
marcus 8286d0f0e5 Titellänge nun parametrisierbar 2026-04-22 09:53:03 +02:00
marcus 8be1848ba9 Fix: Verarbeitung von PROPOSAL_READY bis SUCCESS in einem Lauf; log4j-core im GUI-Test-Classpath
Der Dokument-Processing-Coordinator finalisiert jetzt unmittelbar nach dem
Persistieren des PROPOSAL_READY-Versuchs im selben Lauf zur Zielkopie und zu
SUCCESS. Die Invariante "neuester PROPOSAL_READY-Versuch ist die fuehrende
Quelle" bleibt gewahrt: Pro Lauf entstehen zwei Historieneintraege
(PROPOSAL_READY, dann SUCCESS). Bootstrap-E2E-Tests auf Single-Run-Semantik
angepasst; die "kein neuer KI-Aufruf bei vorhandenem PROPOSAL_READY"-Invariante
ist weiterhin im Application-Unit-Test abgedeckt.

Zusaetzlich log4j-core als Test-Scope-Abhaengigkeit im GUI-Modul ergaenzt,
damit die "Log4j2 could not find a logging implementation"-Warnung im
Testlauf nicht mehr erscheint.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-21 17:26:21 +02:00
van Elst, Marcus 202088d1d3 Removed unused imports 2026-04-21 10:31:47 +02:00
marcus 016da8318d M13 vollständig abgeschlossen: V2.0-Freigabe (AP-001 bis AP-009)
- AP-001: Betriebs- und Startdokumentation für GUI und headless
  konsolidiert (betrieb.md, README.md)
- AP-002: Endbenutzer-Bedienanleitung gui-bedienanleitung.md angelegt
  (deskriptiv, 13 Kapitel, deutsch, Windows-Hinweise)
- AP-003: Konfigurationsbeispiele docs/examples/application.properties
  und docs/examples/prompt.txt konsolidiert, konsistent mit Standardvorlage
- AP-004: Regressionstests für headless Abwärtskompatibilität
  (JAR-Smoke-IT mit --config-Varianten und JavaFX-Freiheit)
- AP-005: GUI-Smoke-Tests für V2.0-Kernumfang vervollständigt
  (Startup-Notice-Sichtbarkeit im Header)
- AP-006: Build- und Packaging-Dokumentation im Abschnitt
  "Build und Packaging" in betrieb.md, README-Artefaktnamen korrigiert
- AP-007: Integrierte Gesamtprüfung durchgeführt, V2.0-Abschnitt in
  befundliste.md — keine Release-Blocker, zwei nicht blockierende
  Restpunkte (R1 ByteBuddy-Warning, R2 fehlender visueller GUI-Render-Test)
- AP-008: entfiel (keine Release-Blocker zu beheben)
- AP-009: Finale Gesamtprüfung, Freigabedokument docs/freigabe-v2_0.md
  mit Git-HEAD, Build-/Test-Ergebnissen, Freigabeaussage. Ein während
  der Stichprobe entdeckter Doku-Defekt (R3: API-Key-Legacy-Variable)
  wurde unmittelbar in gui-bedienanleitung.md korrigiert.

V2.0 ist freigabefähig. 1.403 Tests grün, 0 Failures, 0 Errors.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-20 22:50:51 +02:00
marcus aa067a3165 M11 vollständig abgeschlossen (AP-001 bis AP-007)
- AP-001: Kernobjekte und Port-Verträge (ModelCatalog-Port, sealed
  Result-Typen, ApiKeyOrigin, GUI-Modell- und Meldungs-Records)
- AP-002: Provider-ComboBox, exklusiver Providerbereich,
  zustandsbewahrender Providerwechsel
- AP-003: HTTP-Adapter für Modellabruf (Claude, OpenAI-kompatibel)
  mit vollständigem Error-Mapping und Dispatcher im Bootstrap
- AP-004: Automatischer Modellabruf bei Providerwechsel, Aktion
  "Modelle neu laden", Umschaltung zwischen Modell-ComboBox und
  Modell-Textfeld, Worker-Thread-Kapselung
- AP-005: Automatische Editorvalidierung (Pflichtfelder,
  Warnschwellen max.text.characters, Plausibilitätshinweise
  max.pages, API-Key-Herkunftsauflösung mit Vorrangregel)
- AP-006: Zentraler Meldungsbereich mit vier Severity-Stufen,
  feldnahe rote Fehlermeldungen, API-Key-Herkunftsanzeige
- AP-007: Integrations- und Regressionstests, Timeout-Mapping-Tests,
  Replace-Semantik für wiederholte Modellabruf-Meldungen

Hexagonale Architektur eingehalten, Application- und Domain-Schicht
bleiben infrastrukturfrei. Threadingmodell konsequent umgesetzt.
Naming-Regel und JavaDoc-Standard durchgängig beachtet.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-20 20:31:15 +02:00
marcus bbb5c4da3a M10 vollständig abgeschlossen (AP-004 bis AP-007)
- AP-004: Speichern und Speichern unter mit .bak-Rotation,
  normalisierte .properties-Ausgabe, API-Key-Erhaltung bei leerem Feld
- AP-005: Dirty-State aus Editorzustand, Fenstertitel- und
  Header-Marker, Schutzdialog (Speichern/Verwerfen/Abbrechen)
  vor Neu/Öffnen/Schließen inkl. Close-Request-Handler
- AP-006: Vollständige Editoroberfläche mit allen Konfigurationswerten,
  native Pfad-Picker für Quell-/Zielordner, SQLite- und Prompt-Datei,
  Files.exists-Pfadprüfung auf Worker-Thread verlagert
- AP-007: Integrations- und Regressionstests für alle zentralen
  Bedienpfade, Writer-Threading-Contract dokumentiert und getestet

Hexagonale Architektur, Threadingmodell und Naming-Regel durchgehend
eingehalten. Keine Vorgriffe auf M11/M12.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-20 17:51:13 +02:00
marcus 01414fc732 M10 bis AP-003 2026-04-20 13:07:19 +02:00
marcus 3f149b2017 Erweiterung für V2.0: M9 umgesetzt 2026-04-13 13:36:54 +02:00
marcus 8a785f1baa Kleinere Korrekturen 2026-04-10 07:50:51 +02:00
marcus ca91749a04 PIT-Lücken in bootstrap gezielt geschlossen 2026-04-09 11:55:17 +02:00
marcus b13d8ba0e1 Deprecation-Warnung in Bootstrap-Tests bereinigt 2026-04-09 09:45:18 +02:00
marcus 7b7af28d12 "Unused Imports" aufgeräumt 2026-04-09 09:06:37 +02:00
marcus 5099ff4aca V1.1 Änderungen 2026-04-09 05:42:02 +02:00
marcus 03689802dd M8 Abschlussdokumentation und Betriebsdoku final geschärft 2026-04-08 17:09:53 +02:00
marcus d61316c699 M8 komplett umgesetzt 2026-04-08 16:30:13 +02:00
marcus 8d915e7ded M7 Bootstrap, Startvalidierung und Exit-Code-Verhalten finalisiert 2026-04-08 12:37:29 +02:00
marcus cab9fed5b0 M7 Logging-Sensitivität mit echten Log- und Persistenznachweisen
abgesichert
2026-04-08 10:52:59 +02:00
marcus f2bbc8a884 M7 Logging-Sensitivität mit echten Verhaltenstests abgesichert 2026-04-08 08:18:13 +02:00
marcus c7818ce920 M7 N2 Verhaltenstests für Logging-Sensitivität nachgezogen 2026-04-08 07:13:32 +02:00
marcus ac3662e758 M7 N2 Logging-Sensitivität produktiv verdrahtet und verifiziert 2026-04-08 06:26:54 +02:00
marcus e9e9b2d17a Umsetzung von Meilenstein M7 2026-04-07 17:26:02 +02:00
marcus 2d7be60057 M4 Nachbearbeitung Bootstrap testseitig vervollständigt 2026-04-06 18:14:55 +02:00
marcus 00daa9cb74 Nachbearbeitung: Konfigurationslade- und Parsefehler einheitlich
klassifiziert
2026-04-05 22:57:45 +02:00
marcus 94728c270f Optimierung: Konfigurationspakete kohärenter zugeschnitten 2026-04-05 11:17:33 +02:00
marcus deaa8c9fa3 Nachbearbeitung: verbliebene Meilensteinbezüge in BootstrapRunnerTest
entfernt
2026-04-04 14:21:58 +02:00
marcus 73824544b6 Nachbearbeitung: Konfigurationsgrenze architekturtreu in Richtung
Bootstrap verschoben
2026-04-04 14:17:34 +02:00
marcus a35ac5c8f1 M4 AP-007 Scope bereinigen und Startfehler-Test ergänzen 2026-04-03 13:33:01 +02:00
marcus 60498ab3c8 Refactoring: Paketnamen und Klassennamen 2026-04-02 14:40:14 +02:00
marcus 1b974db321 M3-AP-007 Bootstrap- und CLI-Anpassungen Pre-Version 2026-04-01 22:09:04 +02:00
marcus 09ad365308 M2 Vorläufige Freigabe nach Sonnet-Review 2026-04-01 07:24:45 +02:00
marcus 9d66a446b3 Implementierung für M2 vorläufig abgeschlossen 2026-03-31 21:52:48 +02:00
marcus 80fcefc4c7 M1-Fix: Exit-Code für ungültige Konfiguration auf 1 geändert 2026-03-31 16:06:57 +02:00
marcus ea83f8fa8c M1 Vollständiger Grundstand mit Build, Konfiguration, Tests und Smoke-Tests 2026-03-31 14:04:47 +02:00