# ÜbersetzungsZentrale – technische Dokumentation

Die ÜbersetzungsZentrale übersetzt Texte lokal im Browser. Version 1 nutzt eine Provider-Architektur mit `BrowserTranslationProvider`, vorbereitetem, deaktiviertem `ServerTranslationProvider` und sicherem `DisabledTranslationProvider`.

## Bibliothek und Modelle

- Browserbibliothek: Transformers.js (`@xenova/transformers`) wird dynamisch ausschließlich im Web Worker geladen.
- Modelle: `Xenova/opus-mt-de-en` und `Xenova/opus-mt-en-de`.
- Sprachrichtungen: Deutsch → Englisch und Englisch → Deutsch.
- Quantisierung: `q8`.
- Geschätzte Modellgröße: jeweils ca. 74 MB im Browser-Cache.
- Lizenz: OPUS-MT/Helsinki-NLP-Modellfamilie, Apache-2.0; Modellkarten der konkreten Xenova-Konvertierungen vor Produktivfreigabe erneut prüfen.

## Datenschutz

Nutzereingaben werden nicht an die ToolZentrale, Google Translate, DeepL, Microsoft Translator oder ähnliche Dienste gesendet. Beim ersten Modellabruf werden nur Modelldateien geladen. Glossar, Einstellungen und Verlauf liegen ausschließlich im Browser (`localStorage`; IndexedDB für künftige Modell-/Cache-Metadaten vorbereitet).

## WebGPU und WebAssembly

Die Oberfläche prüft WebGPU, WebAssembly und Browserfähigkeiten lokal. WebGPU wird bevorzugt, WebAssembly ist Rückfall. Die Übersetzung läuft in `translation-worker.js`, damit der Hauptthread nicht durch Modellberechnung blockiert wird.

## Modellinstallation und Löschung

Modelle werden nicht beim Öffnen der Seite geladen. Der Download startet erst durch Nutzeraktion, z. B. „Lokal übersetzen“. Browser verwalten den Modellcache. Die UI bietet Schaltflächen zum Löschen lokaler Historie, Glossare, Modellhinweise und aller lokalen Übersetzungsdaten.

## Schutzschicht und Prüfung

Vor der Übersetzung werden URLs, E-Mail-Adressen, Telefonnummern, Geldbeträge, Datums- und Zeitangaben, Aktenzeichen, Kennzeichen, Dateipfade, Platzhalter, HTML-Tags, Markdown-Links, Zahlen und Glossarbegriffe als `{{TZ_PROTECTED_n}}` maskiert. Nach der Übersetzung werden sie wiederhergestellt; fehlende Platzhalter führen zu einer Warnung statt zu still beschädigten Ergebnissen. Die Prüffunktion vergleicht Zahlen, strukturierte Inhalte, Absätze, geschützte Begriffe und leere Ergebnisse.

## Neue Modelle ergänzen

Neue Modelle werden zentral in `TRANSLATION_MODELS` in `src/assets/js/tools/uebersetzungszentrale/translation-core.js` ergänzt. `localPath` kann später auf eigene Domainpfade zeigen, ohne die UI zu ändern.

## ServerProvider später aktivieren

Feature-Flags liegen in `TRANSLATION_FEATURE_FLAGS`. `serverProviderEnabled` ist `false`. Der ServerProvider baut aktuell keine Netzwerkverbindung auf und liefert bei Aktivierung ohne Konfiguration eine verständliche Fehlermeldung.

## Bekannte Einschränkungen

- Automatische Spracherkennung, Dokumentübersetzung, Tonfalländerung, Rückübersetzung, Audio und Qualitäts-Score sind nicht aktiv und werden nicht simuliert.
- Exakte Download-Prozentwerte werden nur angezeigt, wenn Transformers.js Fortschrittsdaten liefert.
- JSON- und CSV-Glossarimport/-export sind umgesetzt.
- Browserkompatibilität hängt von Worker, WebAssembly, Speicher und optional WebGPU ab. Moderne Chromium-, Firefox- und Safari-Versionen können die Seite öffnen; Modellperformance variiert stark.

## Manueller Integrationstest

1. Seite `/tools/uebersetzungszentrale/` öffnen.
2. Deutsch → Englisch wählen.
3. Kurzen Text mit URL, E-Mail und Zahl eingeben.
4. „Lokal übersetzen“ klicken und Modelldownload abwarten.
5. Ergebnis prüfen: URL, E-Mail und Zahl bleiben erhalten.
6. Englisch → Deutsch wiederholen.
