mirror of
https://github.com/complexcaresolutions/documentation.git
synced 2026-03-17 15:13:54 +00:00
3.3 KiB
3.3 KiB
To-Do-Liste - Payload CMS Multi-Tenant Projekt
Server: sv-payload (LXC 700) - 10.10.181.100 Frontend-Tasks: Siehe
FRONTEND.md(sv-frontend, LXC 704)
Zusammenfassung: Offene Tasks (Payload-Server)
Hohe Priorität
| Status | Task | Bereich |
|---|---|---|
| [ ] | SMTP-Credentials in .env konfigurieren |
Mittlere Priorität
| Status | Task | Bereich |
|---|---|---|
| [ ] | Media-Backup zu S3/MinIO | Backup |
| [ ] | CDN-Integration (Cloudflare) | Caching |
| [x] | CI/CD Pipeline erweitern (Lint/Test/Build) | DevOps |
| [x] | Security Scanning (CodeQL, Dependency Audit) | DevOps |
| [x] | Staging-Deployment | DevOps |
| [x] | Memory-Problem lösen (Swap) | Infrastruktur |
| [ ] | PM2 Cluster Mode testen | Infrastruktur |
| [ ] | Payload/Next Releases auf Next.js 16 Support beobachten | Tech Debt |
Niedrige Priorität
| Status | Task | Bereich |
|---|---|---|
| [ ] | Monitoring: Sentry, Prometheus, Grafana | Monitoring |
| [x] | AuditLogs Retention (90 Tage Cron) | Data Retention |
| [x] | Email-Log Cleanup Cron | Data Retention |
| [x] | Media-Orphan-Cleanup | Data Retention |
| [x] | Consent-Logs Archivierung | Data Retention |
| [ ] | Dashboard-Widget für Email-Status | Admin UX |
| [ ] | TypeScript Strict Mode | Tech Debt |
| [x] | E2E Tests für kritische Flows | Testing |
Dokumentation
| Status | Task |
|---|---|
| [x] | DEPLOYMENT.md erstellen |
Legende
- Offen
- Erledigt
- [~] In Bearbeitung
- [!] Blockiert
Offene Aufgaben (Detail)
Analytics Integration
- Umami-Server auf sv-analytics einrichten
- Website-IDs für alle 4 Tenants erstellen
src/config/analytics.tsmit Website-IDsUmamiScript.tsximplementieren- Umami Script in Root Layout einbinden (Multi-Tenant)
useAnalytics.tsHook für Custom Eventsanalytics.server.tsfür Server-Side Events- Event-Tracking in Newsletter/CTA integrieren
Google Ads Conversion (mit Consent)
GoogleConsentMode.tsximplementieren- Google Consent Mode v2 mit Orestbida Cookie-Banner
useGclid.tsHook für GCLID-Erfassunggoogle-ads.tsClient-Side Conversion Trackinggoogle-ads.server.tsServer-Side Conversion API- Enhanced Conversions mit gehashten E-Mails
Backup-System
- Media-Backup zu S3/MinIO
- Disaster Recovery Plan
Monitoring & Logging
- Sentry Error Tracking
- Prometheus Metrics
- Grafana Dashboard
Build & Infrastructure
- Memory-Problem gelöst (4GB Swap via ZFS ZVOL)
- PM2 Cluster Mode testen
Testing & CI/CD
- CI/CD Pipeline (
.github/workflows/ci.yml) - Staging-Deployment (
.github/workflows/deploy-staging.yml) - E2E Tests (
tests/e2e/)
Data Retention
- Automatische Datenbereinigung (
src/lib/retention/) - Cron-Job für Email-Log Cleanup (90 Tage)
- AuditLogs Retention Policy (90 Tage)
- Consent-Logs Archivierung (3 Jahre, expiresAt-basiert)
- Media-Orphan-Cleanup
Hinweise
- Tenant-Isolation bei localhost: API gibt 403 zurück wenn kein Tenant zur Domain passt (gewollt)
- GraphQL Playground deaktiviert: Route entfernt
- PM2 Cluster Mode: Aktuell 1 Instanz, für Skalierung
instances: "max"setzen
Letzte Aktualisierung: 29.12.2025