Files

47 lines
1.7 KiB
Markdown

# M0 Legacy-Datenbankstatus
Stand: 2026-07-11
## Entscheidung
Ein alter MS-SQL-Datenbankstand steht aktuell nicht zur Verfügung. Deshalb
können `schema-export.sql` und `golden-master-queries.sql` derzeit nicht gegen
eine echte Legacy-Datenbank ausgeführt werden.
Für die weitere Umstrukturierung gilt daher:
- Der Legacy-Code ist die primäre Quelle für das fachliche Verhalten.
- Die Screenshots unter `docs/m0/screenshots/` sind die visuelle Referenz.
- Die MySQL-Testdatenbank ist die rekonstruierte Entwicklungsbasis.
- Fachliche Golden-Master-Werte werden aus rekonstruierten Testfällen statt aus
historischer Produktivdatenbank aufgebaut.
## Konsequenz für M1
M1 wird nicht als Vergleich gegen echte Alt-Daten gestartet, sondern als
rekonstruierter Golden-Master:
1. Fachliche Regeln aus dem Code ableiten.
2. Kleine, kontrollierte Testdaten erzeugen.
3. Erwartete Salden, Jahreswerte, Striche, Einzahlungen und CSV-Importfälle
manuell beziehungsweise per Testskript definieren.
4. Neue Implementierung gegen diese erwarteten Werte testen.
Wenn später doch noch ein MS-SQL-Dump oder Schemaexport auftaucht, werden die
ursprünglichen M0-SQL-Dateien nachträglich genutzt und die Baseline ergänzt.
## Aktuelle rekonstruierte Basis
- MySQL-Dev-Schema: `database/mysql-dev-schema.sql`
- Initialisierung: `scripts/init-mysql-dev.php`
- Dev-Start: `scripts/run-dev-server.sh`
- MySQL-Kompatibilität: `lib/sqlsrv_mysql_compat.php`
## Offene Punkte
- Soll die MySQL-Testdatenbank ab jetzt die verbindliche Entwicklungsdatenbank
für M1/M2 sein?
- Soll das Ziel weiterhin eine angepasste Legacy-PHP-App sein oder ein sauberer
SaaS-Neuaufbau mit übernommener Fachlogik?
- Welche Testfälle müssen fachlich auf jeden Fall abgedeckt werden?