presseportale/tests/Feature
Kevin Adametz 1cd4d8e33a P6.6: legacy:grandfather-subscriptions — aktive Legacy-Abos aus dem Rechnungsarchiv migrieren
Kriterien vom Auftraggeber (12.06.2026): Quelle der Aktiv-Erkennung ist
ausschliesslich das read-only Rechnungsarchiv legacy_invoices (D-12).
Legacy-Rechnungen bleiben Archiv; neue manuelle Rechnungen entstehen im
MAN-Rechnungskreis.

- Aktiv-Regel: juengste Rechnung pro (Portal, Legacy-Vereinbarung) mit
  payment_option.type=recurring und user_payment_option.status=active;
  next_due_date max. --grace-months (Default 12) ueberfaellig, sonst
  stale -> bleibt reines Archiv. Einmal-Kaeufe werden nie uebernommen.
- Uebernahme als grandfathered in user_payment_options:
  current_period_end = next_due_date, Betraege/Intervall der letzten
  Legacy-Rechnung in legacy_conditions -> der taegliche MAN-Lauf
  (billing:generate-manual-invoices) fakturiert zum gewohnten
  jaehrlichen Rhythmus weiter. Versteckte Katalog-Platzhalter
  LEGACY-{PE|BP}-{Artikel} in payment_options.
- Replay-faehig (D-18): Re-Runs aktualisieren anhand der Legacy-IDs in
  legacy_conditions statt zu duplizieren — die Kern-Migration laeuft
  kurz vor dem Relaunch erneut.
- Optionen: --dry-run, --as-of, --grace-months, --no-report; JSON-Report
  nach storage/app/migration/. Dry-Run gegen Test-Snapshot: 22 aktive
  jaehrliche Vereinbarungen, davon 4 sofort faellig, 0 stale.
- Doku: MIGRATION-STEPS.md (Runbook-Reihenfolge nach archive-invoices),
  05-DATABASE-MERGE §5.6, 12-NAECHSTE-SCHRITTE 6.6, 08-PROGRESS,
  PHASE-9-Plan + Checkliste.

Tests: GrandfatherLegacySubscriptionsTest (7, inkl. End-to-End
Migration -> MAN-Rechnung mit Legacy-Betraegen). Suite: 475 passed,
4 skipped. Pint clean.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 10:35:48 +00:00
..
Admin User Panel: Phase-8-Abschluss, Titelbild/Lizenzen/Zeitzonen und KI-Pruef-Pipeline 2026-06-12 08:30:13 +00:00
Api/V1 Phase 9 Block 1: Gelb-Routing Direkt-Live, Slot-Verbrauch bei Veroeffentlichung, Submit-Gate 2026-06-12 09:47:06 +00:00
Auth 29-05-2026 Optimierungen Fixes am Code 2026-05-29 12:42:05 +00:00
Billing P6.6: legacy:grandfather-subscriptions — aktive Legacy-Abos aus dem Rechnungsarchiv migrieren 2026-06-12 10:35:48 +00:00
Categories 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
Customer 22-05-2026 Optimierung der User und Admin Panels 2026-05-22 11:18:59 +02:00
Settings 29-05-2026 Optimierungen Fixes am Code 2026-05-29 12:42:05 +00:00
Web Multi-Domain-Asset-Infrastruktur: geteilte Vite-Konfiguration und DomainAssetContext 2026-06-12 08:16:09 +00:00
ApiAccessSecurityAndLoggingTest.php 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
ApiDocumentationTest.php 29-05-2026 Optimierungen Fixes am Code 2026-05-29 12:42:05 +00:00
ApiUsageReporterTest.php 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
CustomerCompanyContextTest.php 22-05-2026 Optimierung der User und Admin Panels 2026-05-22 11:18:59 +02:00
CustomerPortalTest.php 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
CustomerPressKitCreatePhase8eTest.php 22-05-2026 Optimierung der User und Admin Panels 2026-05-22 11:18:59 +02:00
CustomerPressKitIndexPhase8eTest.php 22-05-2026 Optimierung der User und Admin Panels 2026-05-22 11:18:59 +02:00
CustomerPressReleaseCreatePhase7Test.php User Panel: Phase-8-Abschluss, Titelbild/Lizenzen/Zeitzonen und KI-Pruef-Pipeline 2026-06-12 08:30:13 +00:00
CustomerPressReleaseEditPhase7Test.php User Panel: Phase-8-Abschluss, Titelbild/Lizenzen/Zeitzonen und KI-Pruef-Pipeline 2026-06-12 08:30:13 +00:00
CustomerPressReleaseSchedulingFormTest.php User Panel: Phase-8-Abschluss, Titelbild/Lizenzen/Zeitzonen und KI-Pruef-Pipeline 2026-06-12 08:30:13 +00:00
CustomerProfileSecurityTest.php 22-05-2026 Optimierung der User und Admin Panels 2026-05-22 11:18:59 +02:00
DashboardTest.php 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
DomainAssetContextTest.php Multi-Domain-Asset-Infrastruktur: geteilte Vite-Konfiguration und DomainAssetContext 2026-06-12 08:16:09 +00:00
ExampleTest.php 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
HasUniqueSlugTest.php 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
LegacyApiAccessLogAnalyzerTest.php 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
LegacyApiCustomerReporterTest.php 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
LegacyInvoiceArchiveCommandTest.php 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
LegacyUserProfileImportTest.php 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
LegacyVerifyCommandTest.php 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
LocalFontsTest.php 22-05-2026 Optimierung der User und Admin Panels 2026-05-22 11:18:59 +02:00
MigrateLegacyMediaCommandTest.php 19-05-2026 Rebrand Pressekonto, Hub-Flux UI und Legacy-Media-Migration 2026-05-19 16:36:13 +00:00
PanelConsolidationTest.php 22-05-2026 Optimierung der User und Admin Panels 2026-05-22 11:18:59 +02:00
PressReleaseAttachmentsManagerTest.php 22-05-2026 Optimierung der User und Admin Panels 2026-05-22 11:18:59 +02:00
PressReleaseBlacklistTest.php 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
PressReleaseClassificationJobTest.php Phase 9 Block 1: Gelb-Routing Direkt-Live, Slot-Verbrauch bei Veroeffentlichung, Submit-Gate 2026-06-12 09:47:06 +00:00
PressReleaseClassificationModelTest.php User Panel: Phase-8-Abschluss, Titelbild/Lizenzen/Zeitzonen und KI-Pruef-Pipeline 2026-06-12 08:30:13 +00:00
PressReleaseContactWarningPhase8cTest.php 22-05-2026 Optimierung der User und Admin Panels 2026-05-22 11:18:59 +02:00
PressReleaseContentScoreTest.php User Panel: Phase-8-Abschluss, Titelbild/Lizenzen/Zeitzonen und KI-Pruef-Pipeline 2026-06-12 08:30:13 +00:00
PressReleaseHtmlSanitizerTest.php create PM v0.5 2026-05-20 19:14:39 +02:00
PressReleaseImageLicenseTest.php User Panel: Phase-8-Abschluss, Titelbild/Lizenzen/Zeitzonen und KI-Pruef-Pipeline 2026-06-12 08:30:13 +00:00
PressReleaseIndexPhase8bTest.php User Panel: Phase-8-Abschluss, Titelbild/Lizenzen/Zeitzonen und KI-Pruef-Pipeline 2026-06-12 08:30:13 +00:00
PressReleasePhase7SchemaTest.php create PM v0.5 2026-05-20 19:14:39 +02:00
PressReleasePlaceholderTest.php User Panel: Phase-8-Abschluss, Titelbild/Lizenzen/Zeitzonen und KI-Pruef-Pipeline 2026-06-12 08:30:13 +00:00
PressReleasePreviewTest.php 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
PressReleasePublishModalPhase8iTest.php Phase 9 Block 1: Gelb-Routing Direkt-Live, Slot-Verbrauch bei Veroeffentlichung, Submit-Gate 2026-06-12 09:47:06 +00:00
PressReleaseQuotaTest.php Phase 9 Block 1: Gelb-Routing Direkt-Live, Slot-Verbrauch bei Veroeffentlichung, Submit-Gate 2026-06-12 09:47:06 +00:00
PressReleaseReclassifyTest.php User Panel: Phase-8-Abschluss, Titelbild/Lizenzen/Zeitzonen und KI-Pruef-Pipeline 2026-06-12 08:30:13 +00:00
PressReleaseSchedulingTest.php Phase 9 Block 1: Gelb-Routing Direkt-Live, Slot-Verbrauch bei Veroeffentlichung, Submit-Gate 2026-06-12 09:47:06 +00:00
PressReleaseShowPhase8aTest.php User Panel: Phase-8-Abschluss, Titelbild/Lizenzen/Zeitzonen und KI-Pruef-Pipeline 2026-06-12 08:30:13 +00:00
PressReleaseWorkflowTest.php User Panel: Phase-8-Abschluss, Titelbild/Lizenzen/Zeitzonen und KI-Pruef-Pipeline 2026-06-12 08:30:13 +00:00
SyncCompanyLogosTest.php 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
SyncPressReleaseImagesTest.php 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00