Prüfstand der Übergabe
Der aktuelle Projektstand wurde mit PHP 8.2.34 und PHP 8.3.6 unter Linux geprüft, mit Symfony 7.4.21, Doctrine ORM 3.7.5 und DBAL 3.10.6. Die Composer-Zielplattform ist PHP 8.2.12 x64. Die Lockdatei wurde durch Composer neu aufgelöst; nur ZipStream wechselte von 3.2.2 auf 3.1.2. Alle übrigen Paketversionen blieben erhalten.
| Prüfung | Ergebnis |
|---|---|
| PHPUnit mit temporärer SQLite-Datenbank, PHP 8.2.34 und 8.3.6 | Je 27 Tests, 2.358 Assertions, bestanden |
| Dieselben Funktionstests mit PHP 8.2.34 gegen einen echten MySQL-Server 8.0.46 | 27 Tests, 2.358 Assertions, bestanden |
| Initialmigration auf leerer MySQL-Datenbank | 76 SQL-Anweisungen erfolgreich ausgeführt |
| Doctrine-Schemaabgleich nach Migration | Datenbank und Mapping stimmen überein |
| Fiktive Demodaten einspielen | Erfolgreich, getrennt von den Testkonten |
| PHP-Syntax | Sämtliche PHP-Quellen einschließlich neuer Sprachkonfiguration und Tests ohne Syntaxfehler |
| Symfony-Dienstkonfiguration | Typen und Abhängigkeiten gültig |
| Twig | Alle 36 Templates syntaktisch gültig |
| YAML | Konfiguration, drei Sprachkataloge, drei Sicherheitskataloge und OpenAPI gültig |
| Übersetzungsabdeckung | Je 641 übereinstimmende UI-Schlüssel und 18 Sicherheitsmeldungen in DE/EN/JA; keine fehlenden statischen Template-Schlüssel |
| JavaScript | node --check erfolgreich; 72 DOM-Verhaltensprüfungen mit jsdom in DE/EN/JA bestanden |
| CSS/SVG | Alle drei Stylesheets mit css-tree geparst; bekannte statische Werte geprüft (moderne Funktionen ausgenommen); drei SVG-Dateien als XML parsebar |
| Start-/Sicherungsskripte | Shell-Syntax gültig |
| Composer | Manifest/Lockdatei gültig; Installations- und reale Plattformprüfung mit PHP 8.2 erfolgreich; Audit ohne gemeldete Sicherheitslücken zum Prüfzeitpunkt |
PHP 8.2 und XAMPP
Die tatsächlichen PHP-8.2-Läufe umfassen Symfony-Bootstrap, alle PHP-Quellen, Plattformanforderungen und Funktionstests. Ein zusätzlicher Test erzeugt mit PhpSpreadsheet und ZipStream 3.1.2 eine echte XLSX-Datei und importiert deren deutsche, englische und japanische Inhalte wieder. Die vorhandenen Integrationstests führen Sodium-Verschlüsselung beim Anlegen von Webhooks aus. Es wurde keine Erweiterungsanforderung ignoriert oder entfernt.
Die Composer-Metadaten wurden für das gemeldete PHP 8.2.12 x64 aufgelöst; der tatsächlich ausgeführte PHP-8.2-Interpreter war Version 8.2.34 unter Linux. Eine Windows-/XAMPP-Installation mit exakt PHP 8.2.12 wurde hier nicht ausgeführt. Die Schritte zum Aktivieren von Sodium und zur Apache-Konfiguration stehen in XAMPP.md.
Oberfläche und weitere Sprachen
Die zusätzlichen Tests prüfen die Menüs und Aktionsbeschriftungen in DE/EN/JA, Kontext beim Sprachwechsel, beibehaltene Filter und Vergleichsauswahl sowie identische Übersetzungsschlüssel. Ein isolierter Testkernel aktiviert Französisch und prüft die automatisch erweiterten Routen, Zugriffskontrollen, Formulare, Suche, Sitemap und Import-/Exportspalten.
npm ci && npm run test:interface prüft CSS-Syntax und 72 Interaktionen für mobile Navigation, Escape/Fokus-Rückgabe, Fokusbegrenzung, mobile Filter, Vergleichslimit, Sprachmenü und Bewegungssteuerung. jsdom hat keine Layout-Engine; die Bildschirm-/Sichtbarkeitswerte werden für diese Verhaltensprüfungen kontrolliert vorgegeben. Daraus wird keine visuelle Abnahme oder Browserkompatibilität abgeleitet.
Inhalt der Funktionstests
Die Tests prüfen dreisprachige öffentliche Seiten und japanische Suche; 22 Arbeitsbereiche jeweils in drei Sprachen; E-Mail-/Passwortanmeldung und Sitzungsentzug; Rollen- und CSRF-Regeln; fremde Firmenkonten; NDA-Annahme, Eigentümerfreigabe und Ablauf; Token-Scope und Mandantentrennung; neue Dokumentrevisionen und veraltete Übersetzungen; PDF-/DOCX-/ZIP-Ausgaben; XLSX-Dateierstellung und -Import; Importvalidierung und Modellaktualisierung; Zahlen-/Einheitenprüfungen; KI-Verarbeitungserlaubnis und Monatskontingent; Wiederholbarkeit von Übersetzungsaufträgen; Rückgabe einer Zeichenreservierung bei Providerfehler; Stripe-Signaturen und idempotente Ereignisverarbeitung; Serviceangebote, Aufgaben, API-/Webhook-Verwaltung; Lieferantenauswahl; Nachrichten, Angebote, Käuferantwort, Terminbestätigung und ICS-Export.
Externe HTTP-Dienste werden in Integrationstests kontrolliert simuliert. Der Anwendungscode nutzt im Betrieb ausschließlich den konfigurierten echten Dienst; die Testantworten sind nicht in die Benutzeroberfläche eingebaut.
Noch nicht in dieser Umgebung ausgeführt
- Docker-Image-Build und vollständiger Compose-Start: kein Docker-Daemon verfügbar.
- Exakte MySQL-Version 8.4: das Compose-Projekt und die CI verwenden 8.4; der ausgeführte MySQL-Test verwendete 8.0.46 mit derselben DBAL-MySQL-8-Plattform.
- Browserprüfung mit realem Rendering, Bildschirmgrößen und visuellen Screenshots: kein unterstütztes Browser-QA-Werkzeug verfügbar. Twig-/DOM-Anfragen wurden direkt gegen den Symfony-Kernel geprüft.
- Produktive KI-Übersetzungen, ausgehende SMTP-Zustellung, Stripe-Checkout und reale ERP-Endpunkte: keine Betreiberzugangsdaten bereitgestellt.
- Tatsächliche ClamAV-Scan-/OCR-Containerkette und ein Docker-Volume-Backup/Restore: Installation und Ablauf sind implementiert und dokumentiert; die volle Containerkette benötigt die Zielumgebung.
Diese Grenzen sind im Übergabestand offen ausgewiesen. Sie verändern den vereinbarten Funktionsumfang nicht; sie benennen die noch auf dem Zielserver nötigen Betriebsprüfungen.