Legacy-Abbau Schritt 3+4: kl_*-Tabellen und legacy_*-Spalten entfernt

Abschluss des Legacy-Abbaus. Die Migration in participants/ledger_entries war
laut Dev-DB vollstaendig (keine legacy_mitarbeiter_id, kein legacy_table), die
kl_*-Tabellen enthielten nur noch Golden-Master-Testfixtures. Da kein echter
Altbestand mehr importiert werden muss (Prod entsteht aus der jetzigen Dev-DB),
kommt die Altwelt komplett raus.

Laufzeit-Code (Schritt 3a):
- ledger.php: Option legacy_mitarbeiter_ids, die Spalten aus allen SELECTs und
  Rueckgaben, ledger_fetch_participant_summary_by_legacy_id sowie das Loeschen
  gespiegelter Legacy-Zeilen in ledger_void_entry/ledger_void_own_self_entry
  entfernt
- imports.php, paypal-inbox.php: legacy_mitarbeiter_id aus Ergebnis und
  Typannotationen entfernt
- ledger-preview.php: Spalte "Legacy" entfernt

Skripte (Schritt 3b/3c):
- die acht reinen Legacy-/Golden-Master-Skripte entfernt (backfill-*,
  seed-golden-master, golden-master-data, check-golden-master, check-m4-*,
  check-m3-saas-basis)
- init-mysql-dev.php legt jetzt einen SaaS-Mandanten mit Owner-Login,
  Teilnehmer, Journalbuchungen und Hinweis an statt kl_*-Zeilen

Schema (Schritt 4, Migration 0024):
- participants.legacy_mitarbeiter_id + uq_participants_tenant_legacy
- ledger_entries.legacy_table/legacy_id + uq_ledger_entries_tenant_legacy
- DROP der Tabellen kl_Einzahlungen, kl_Kaffeeverbrauch, kl_hinweise,
  kl_config, kl_Mitarbeiter

Verifikation unveraendert gruen: http-smoke 33/0, role-matrix 55/0,
tenant-isolation 11/1 (Altfehler), m3-auth/tenant-resolution/billing gruen.
check-m3-settings-flow 7/6 ist vorbestehend (schon bei 3e24910 rot, mit
spaeteren Settings-Feldern nicht synchron) und unabhaengig von diesem Abbau.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-22 08:31:08 +02:00
co-authored by Claude Opus 4.8
parent 3e24910831
commit 4acd4a2d40
14 changed files with 105 additions and 1715 deletions
-10
View File
@@ -59,7 +59,6 @@ include 'nav.php';
Read-only Vorschau aus <code>ledger_entries</code> für
<?php echo saas_html($tenantName); ?>
(<code><?php echo saas_html($tenantSlug); ?></code>).
Die bestehenden App-Seiten schreiben weiterhin in die Legacy-Tabellen.
</p>
<h3>Tenant-Summen</h3>
@@ -117,7 +116,6 @@ include 'nav.php';
<th>Betrag</th>
<th>Striche</th>
<th>Quelle</th>
<th>Legacy</th>
</tr>
<?php foreach ($recentEntries as $entry): ?>
<tr>
@@ -127,14 +125,6 @@ include 'nav.php';
<td><?php echo ledger_preview_money($entry['amount_cents']); ?></td>
<td><?php echo $entry['marks_count'] !== null ? number_format($entry['marks_count'], 0, ',', '.') : ''; ?></td>
<td><?php echo saas_html($entry['source']); ?></td>
<td>
<?php
echo saas_html((string)($entry['legacy_table'] ?? ''));
if ($entry['legacy_id'] !== null) {
echo ' #' . (int)$entry['legacy_id'];
}
?>
</td>
</tr>
<?php endforeach; ?>
</table>