Files
kaffeekasse-saas/docs/m0/legacy-db-status.md
T
2026-07-12 00:12:02 +02:00

1.7 KiB

M0 Legacy-Datenbankstatus

Stand: 2026-07-11

Entscheidung

Ein alter MS-SQL-Datenbankstand steht aktuell nicht zur Verfuegung. Deshalb koennen schema-export.sql und golden-master-queries.sql derzeit nicht gegen eine echte Legacy-Datenbank ausgefuehrt werden.

Fuer die weitere Umstrukturierung gilt daher:

  • Der Legacy-Code ist die primaere Quelle fuer 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 Testfaellen statt aus historischer Produktivdatenbank aufgebaut.

Konsequenz fuer 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-Importfaelle manuell beziehungsweise per Testskript definieren.
  4. Neue Implementierung gegen diese erwarteten Werte testen.

Wenn spaeter doch noch ein MS-SQL-Dump oder Schemaexport auftaucht, werden die urspruenglichen M0-SQL-Dateien nachtraeglich genutzt und die Baseline ergaenzt.

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-Kompatibilitaet: lib/sqlsrv_mysql_compat.php

Offene Punkte

  • Soll die MySQL-Testdatenbank ab jetzt die verbindliche Entwicklungsdatenbank fuer M1/M2 sein?
  • Soll das Ziel weiterhin eine angepasste Legacy-PHP-App sein oder ein sauberer SaaS-Neuaufbau mit uebernommener Fachlogik?
  • Welche Testfaelle muessen fachlich auf jeden Fall abgedeckt werden?