016da8318d
- 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>
95 lines
4.0 KiB
Markdown
95 lines
4.0 KiB
Markdown
# V2.0-Freigabe
|
||
|
||
## Geprüfter Stand
|
||
|
||
- Git-Branch: `main`
|
||
- Git-Commit (HEAD, zum Zeitpunkt der Prüfung): `1bb7a427357c73039c09a8e1bfe351dee54df765`
|
||
- Datum der Prüfung: 2026-04-20
|
||
|
||
---
|
||
|
||
## Ausgeführte Prüfungen
|
||
|
||
| Prüfung | Ergebnis |
|
||
|---|---|
|
||
| Vollständiger Maven-Reactor-Build (`clean verify`, alle 6 Module, `-DskipPitest=true`) | **ERFOLGREICH** |
|
||
| Unit-Tests gesamt | **1.398 Tests, 0 Failures, 0 Errors, 0 Skipped** |
|
||
| Integrations-/Smoke-Tests (`ExecutableJarSmokeTestIT`, Bootstrap) | **5 Tests, alle grün** |
|
||
| Shaded-JAR erzeugt unter `pdf-umbenenner-bootstrap/target/` | **ja** |
|
||
| Konfigurations- und Dokumentationsbeispiele auf Konsistenz geprüft | **ja** |
|
||
| Bedienanleitung (`gui-bedienanleitung.md`) gegen reales GUI-Verhalten stichprobengeprüft | **ja – ein während der Prüfung identifizierter Befund wurde unmittelbar korrigiert (siehe R3)** |
|
||
|
||
---
|
||
|
||
## Build- und Test-Ergebnisse
|
||
|
||
Ausgeführtes Kommando:
|
||
```
|
||
.\mvnw.cmd clean verify -pl pdf-umbenenner-domain,pdf-umbenenner-application,pdf-umbenenner-adapter-out,pdf-umbenenner-adapter-in-cli,pdf-umbenenner-adapter-in-gui,pdf-umbenenner-bootstrap --also-make -DskipPitest=true
|
||
```
|
||
|
||
**Gesamtergebnis: BUILD SUCCESS**
|
||
**Laufzeit: 01:15 min**
|
||
|
||
| Modul | Tests | Failures | Errors | Skipped |
|
||
|---|---|---|---|---|
|
||
| `pdf-umbenenner-domain` | 227 | 0 | 0 | 0 |
|
||
| `pdf-umbenenner-application` | 455 | 0 | 0 | 0 |
|
||
| `pdf-umbenenner-adapter-in-cli` | 8 | 0 | 0 | 0 |
|
||
| `pdf-umbenenner-adapter-in-gui` | 190 | 0 | 0 | 0 |
|
||
| `pdf-umbenenner-adapter-out` | 371 | 0 | 0 | 0 |
|
||
| `pdf-umbenenner-bootstrap` (Unit) | 147 | 0 | 0 | 0 |
|
||
| `pdf-umbenenner-bootstrap` (IT) | 5 | 0 | 0 | 0 |
|
||
| **Gesamt** | **1.403** | **0** | **0** | **0** |
|
||
|
||
Erzeugtes Shaded-JAR: `pdf-umbenenner-bootstrap/target/pdf-umbenenner-bootstrap-0.0.1-SNAPSHOT.jar`
|
||
Größe: ca. 28 MB (enthält JavaFX für Windows, PDFBox, SQLite-JDBC, Log4j2 und alle Module)
|
||
|
||
---
|
||
|
||
## Offene nicht blockierende Restpunkte
|
||
|
||
Die folgenden Restpunkte wurden in der integrierten Gesamtprüfung dokumentiert und
|
||
gelten als freigabekompatibel.
|
||
|
||
### R1 – ByteBuddy-Agent-Warnung bei Tests
|
||
|
||
Beim Build erscheint wiederholt `WARNING: A Java agent has been loaded dynamically
|
||
(byte-buddy-agent-1.14.12.jar)`. Der Hinweis stammt von Mockito und tritt seit dem V1.1-Stand
|
||
auf. Kein funktionaler Einfluss. Mit `-XX:+EnableDynamicAgentLoading` unterdrückbar, aber keine
|
||
Pflicht für V2.0.
|
||
|
||
### R2 – GUI-Tests ohne echten JavaFX-Rendering-Pfad
|
||
|
||
Die GUI-Tests laufen unter headless JavaFX (Monocle) und prüfen View-Modell-Logik,
|
||
Zustandsübergänge und Koordinatoren-Verhalten. Das visuelle Rendering (Farbgebung der
|
||
Meldungspräfixe, Layout-Details) ist nicht automatisiert geprüft. Dies entspricht der in
|
||
CLAUDE.md definierten GUI-Teststrategie (kein TestFX über Monocle hinaus).
|
||
|
||
### R3 – Bedienanleitung: Legacy-Umgebungsvariable für OpenAI-kompatibel (behoben)
|
||
|
||
**Ursprünglicher Befund:** Abschnitt 10 der `gui-bedienanleitung.md` beschrieb
|
||
`OPENAI_COMPATIBLE_API_KEY` fälschlich als Legacy-Umgebungsvariable. Tatsächlich ist
|
||
`OPENAI_COMPATIBLE_API_KEY` die primäre providerspezifische Umgebungsvariable, und die
|
||
echte Legacy-Umgebungsvariable lautet `PDF_UMBENENNER_API_KEY`.
|
||
|
||
**Status:** Korrigiert. Abschnitt 10 benennt jetzt `OPENAI_COMPATIBLE_API_KEY` als
|
||
primäre Variable und `PDF_UMBENENNER_API_KEY` als Legacy-Variable und hält fest, dass
|
||
Claude keine Legacy-Variable hat.
|
||
|
||
**Kein Release-Blocker und im V2.0-Freigabestand nicht mehr offen.**
|
||
|
||
---
|
||
|
||
## Freigabeaussage
|
||
|
||
V2.0 ist nach Prüfung fehlerfrei buildbar, vollständig nach Spezifikation umgesetzt
|
||
und als freigabefähig einzustufen. Keine Release-Blocker. Die zwei nicht blockierenden
|
||
Restpunkte (R1, R2) sind dokumentiert und können außerhalb des V2.0-Scopes adressiert
|
||
werden; R3 wurde während der finalen Prüfung unmittelbar behoben.
|
||
|
||
Der vollständige Maven-Reactor-Build ist grün (1.403 Tests, 0 Failures, 0 Errors,
|
||
0 Skipped). Alle in der integrierten Gesamtprüfung definierten Spezifikations-
|
||
Prüfpunkte gegen die Spec-Trias sind als erfüllt bestätigt. Die Dokumentation ist
|
||
vollständig und konsistent mit dem Code.
|