# Vendoo 1.34.2 – Git-Sicherheitsdiagnose & gemeinsamer Staging-Builder

## Anlass

Beim praktischen Windows-Lauf erschien nur:

```text
Git-Sicherheitsgate fehlgeschlagen (4):
```

Die Zahl `4` ist die Anzahl der gefundenen Treffer, nicht der Prozess-Exitcode. Windows PowerShell 5.1 behandelte die über stderr ausgegebenen Detailzeilen jedoch als Fehlerstrom und brach die Ausgabe nach der Überschrift ab.

Zusätzlich verwendeten Windows und Linux unterschiedliche Kopierregeln. Lokale `.env.*`-Dateien oder Operations-Laufzeitordner konnten dadurch zunächst in das temporäre Staging gelangen und wurden erst anschließend vom Gate blockiert.

## Lösung

### Einheitlicher Staging-Builder

`tools/prepare-git-staging.mjs` wird auf allen Plattformen verwendet. Er:

- erhält ausschließlich das `.git`-Verzeichnis des temporären Klons,
- entfernt alte Dateien aus dem temporären Arbeitsbaum,
- kopiert nur freigegebene Quelldateien,
- übernimmt `.env.example` und `.env.docker.example`,
- schließt produktive `.env.*`-Dateien aus,
- schließt Operations-, Upload-, Backup-, Log-, Datenbank- und Modelllaufzeitdaten aus,
- verändert niemals den echten Vendoo-Installationsordner.

### Vollständige Diagnose unter Windows

Der PowerShell-Assistent startet Node über `Start-Process` und leitet stdout und stderr in getrennte temporäre Dateien um. Anschließend werden alle Zeilen kontrolliert eingelesen und angezeigt.

Bei einem echten Treffer entsteht:

```text
logs/github-deploy-safety-report.txt
```

Der Bericht wird unter Windows automatisch im Editor geöffnet.

## Sicherheit

Der Filter ersetzt das Sicherheitsgate nicht. Nach dem bereinigten Kopiervorgang scannt `verify-git-safety.mjs` weiterhin den vollständigen Staging-Arbeitsbaum auf eingebettete Schlüssel, Tokens, private Schlüssel, unerwartet große Dateien und verbotene Laufzeitdaten.

## Datenhaltung

Der Hotfix verändert oder löscht keine Datenbank, Uploads, Backups, `.env`, API-Schlüssel, Benutzer, Artikel, FLUX-Modelle oder ComfyUI-Daten.
