# Abnahmebericht – Vendoo Production Updater 2.1

## Anlass

Production Updater 2.0 konnte einen früh beendeten Worker nur als Exit-Code 1 melden. Der Standardfehlerkanal war nicht mit der Oberfläche verbunden und der Protokollpfad wurde erst vom Worker selbst geliefert. Ein Fehler vor dessen erster Statusmeldung führte daher zu einer leeren Diagnose.

## Korrektur

- neuer, kleiner `Vendoo.Updater.Host.ps1` als überwachte Bootstrap-Grenze
- initialer Status und fester Protokollpfad werden bereits von der GUI angelegt
- vollständige Umleitung und Auswertung von Standardausgabe und Standardfehler
- Lade-, Parser- und Initialisierungsfehler des Worker-Kerns werden mit Datei, Zeile und vollständiger Ausnahme protokolliert
- der Worker-Core beendet den Host nicht mehr mit `exit`
- der Host garantiert einen terminalen Status
- Diagnoseordner ist direkt aus der Oberfläche erreichbar
- `updater.log`, `status.json`, `events.ndjson`, `worker.stdout.log` und `worker.stderr.log` liegen pro Lauf in einem eigenen Verzeichnis

## Automatisierte Abnahme

- PowerShell-Strukturparser: UI, Host, Worker und Launcher ohne Parserfehler
- `npm run verify:all`: Exit-Code 0
- JavaScript-/MJS-/CJS-Syntax: 166 Dateien
- Git-Sicherheitsgate: 578 Paketdateien, keine Secrets oder Laufzeitdaten
- Plattformgraph: 18 Module und 41 Capabilities
- Datenbankmigrationen: erfolgreich, vorhandene Daten bleiben erhalten
- Updater-2.1-Vertrag: erfolgreich
- internes SHA-256-Manifest: 577 Dateien

## Prüfgrenze

Die WPF-Oberfläche wurde in dieser Linux-Prüfumgebung nicht interaktiv unter Windows gestartet. Parser, XAML-/Codevertrag, Bootstrap-Architektur, vollständiger Fehlerkanal, Paketgrenzen und der gesamte Vendoo-Abnahmevertrag wurden automatisiert geprüft. Beim nächsten Windows-Fehler bleibt die Oberfläche geöffnet und zeigt die konkrete PowerShell-Ausnahme samt Protokollpfad; ein diagnostikloser Exit-Code-1-Zustand ist durch den neuen Startvertrag ausgeschlossen.
