95b7261227
In der Vertragsübersicht tauchen rohe <script>/<img>-Payloads als Plaintext auf – React escaped sie zwar (kein XSS), sie sehen aber hässlich aus. Ursprung: Daten aus pre-Pentest-Zeit, bevor sanitizeContractBody beim Write existierte. Fix: sanitizeContract und sanitizeCustomer strippen jetzt zusätzlich HTML in den definierten Display-Feldern (providerName, tariffName, customerNumberAtProvider, firstName, lastName, companyName, etc.). Wirkt auch auf nested previousContract + energyDetails. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>