cms.c2sgmbh/docs/PROJECT_STATUS.md
Martin Porwoll 96b8cca9d6 docs: update PROJECT_STATUS.md and CLAUDE.md with monitoring dashboard
- Mark Monitoring & Alerting Dashboard as completed in roadmap
- Add monitoring subsystem to CLAUDE.md subsystems table
- Add 4 monitoring collections to collections list (55+ → 59+)
- Add monitoring dashboard URL
- Add changelog entry for 15.02.2026

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 00:53:52 +00:00

12 KiB

Projekt Status - Februar 2026

Stand: 15. Februar 2026

Zusammenfassung

Die komplette Entwicklungsinfrastruktur ist eingerichtet und funktionsfähig:

  • Payload CMS Multi-Tenant (Dev + Prod) - v3.76.1 stabil
  • Multi-Frontend Development Environment
  • AI-gestützte Entwicklungstools
  • Reverse Proxy Stack (Caddy + Nginx)
  • Analytics (Umami)
  • Community Management System (YouTube, Facebook, Instagram)
  • YouTube Operations Hub (Multi-Kanal-Verwaltung)

Abgeschlossen

Infrastruktur VLAN 181 (Development)

LXC Hostname IP Service Status
699 sv-caddy 10.10.181.99 Caddy Reverse Proxy Running
700 sv-payload 10.10.181.100 Payload CMS + Redis Running
701 sv-postgres 10.10.181.101 PostgreSQL 17 + Redis Cmd Running
702 sv-dev-payload 10.10.181.102 Payload Experimental ⏸️ Stopped
703 sv-analytics 10.10.181.103 Umami Analytics Running
704 sv-frontend 10.10.181.104 Multi-Project Next.js Running

Hetzner 3 (Production)

  • Debian 13 Installation
  • PostgreSQL 17 mit payload_db und umami_db
  • Redis Cache
  • Payload CMS Production (cms.c2sgmbh.de)
  • Umami Analytics Production (analytics.c2sgmbh.de)
  • Nginx Reverse Proxy mit Let's Encrypt
  • PM2 Process Management
  • Claude Code CLI
  • Backup-Scripts (täglich)
  • CVE-2025-55182 Hotfix

Caddy Reverse Proxy (sv-caddy)

  • Caddy 2.9.x mit Cloudflare DNS Plugin
  • Wildcard SSL für *.porwoll.tech
  • Cloudflare DNS-Challenge
  • Routing für alle Services
  • Security Headers

Payload CMS

  • Multi-Tenant Plugin
  • Redis Caching
  • Package-Versionen synchronisiert:
    • Next.js 16.2.0-canary.41
    • React 19.2.3
    • Payload 3.76.1
  • GitHub Repository (complexcaresolutions/cms.c2sgmbh)
  • YouTube Analytics Dashboard (4-Tab-Dashboard mit Kanal-Auswahl)
  • Admin-Nav Sidebar Refactoring (nativer Payload-Stil)
  • CI/CD Pipeline (GitHub Actions):
    • CI: ESLint, TypeScript, Tests, Build, E2E
    • Security: Gitleaks, pnpm audit, CodeQL
    • Staging: Auto-Deploy auf develop-Push
    • Production: Manuelles Deploy mit Backup + Rollback

Community Management System

  • YouTube Integration:
    • YouTubeChannels Collection (Multi-Kanal-Verwaltung)
    • YouTubeContent Collection (Videos + Shorts)
    • YtSeries Collection (Serien mit Branding)
    • YtNotifications Collection (Handlungsbedarf)
    • YouTube Operations Dashboard
    • Automatische Kommentar-Synchronisation
  • Meta Integration (Facebook + Instagram):
    • SocialAccounts Collection (OAuth-Verbindungen)
    • Meta OAuth Flow mit Long-Lived Token (60 Tage)
    • FacebookSyncService + InstagramSyncService
    • Kommentar-Synchronisation über UnifiedSyncService
    • Community Inbox mit Plattform-Filter (YouTube + Facebook + Instagram)
    • Community Analytics Dashboard
  • Community Reports:
    • Tägliche/wöchentliche E-Mail-Reports
    • Konfigurierbare Report-Settings
    • Cron-basierter Versand

Monitoring & Alerting Dashboard

  • System-Überwachung:
    • CPU, RAM, Disk-Auslastung (Node.js os-Modul)
    • PM2 Prozess-Status (Payload + Queue-Worker)
    • Load Average, Uptime
  • Service-Status:
    • PostgreSQL, PgBouncer, Redis, SMTP, OAuth-Tokens, BullMQ Queues, Cron-Jobs
  • Performance-Tracking:
    • Response-Zeiten (Avg, P95, P99), Error-Rate, Requests/Minute
    • In-Memory Ring-Buffer (10.000 Einträge)
  • Alerting:
    • Konfigurierbare Regeln (MonitoringAlertRules Collection)
    • Multi-Channel: Email, Slack, Discord
    • Cooldown-basierte Deduplizierung
  • Structured Logging:
    • MonitoringLogs Collection mit Level/Source-Filter
    • Fire-and-forget Logger mit Payload-Fallback
  • Dashboard UI:
    • 5-Tab-Dashboard unter /admin/monitoring
    • SSE-basierte Echtzeit-Updates
    • Trend-Charts, Gauge-Widgets, Service-Karten
  • Data Retention:
    • Snapshots: 7 Tage, Logs: 30 Tage, Alert-History: 90 Tage

sv-frontend (Multi-Project)

  • Node.js 22.x + pnpm
  • AI-Tools installiert:
    • Claude Code 2.0.72
    • Codex CLI 0.73.0
    • Gemini CLI 0.21.2
  • 9 Frontend-Projekte initialisiert
  • Systemd Services (Ports 3000-3008)
  • SSH-Zugriff mit Key
  • VS Code Remote-SSH kompatibel

GitHub Repositories

Organisation: complexcaresolutions (Internal)

  • cms.c2sgmbh (Payload CMS)
  • frontend.porwoll.de
  • frontend.blogwoman.de
  • frontend.caroline-porwoll.com
  • frontend.caroline-porwoll.de
  • frontend.complexcaresolutions.de
  • frontend.gunshin.de
  • frontend.sensualmoment.de
  • frontend.zweitmeinu.ng
  • frontend.zytoskandal.de

⚠️ Kritische Aufgaben

Priorität Aufgabe Status
Meta (Facebook/Instagram) Kommentar-Sync Erledigt
YouTube Thumbnail-Download für Offline-Anzeige Erledigt
Monitoring & Alerting Dashboard Erledigt

🔜 Nächste Schritte

Kurzfristig (diese Woche)

  1. Meta (Facebook/Instagram) Kommentar-Synchronisation fertigstellen
  2. YouTube Thumbnail-Download für Offline-Anzeige

Mittelfristig (Februar/März 2026)

  1. porwoll.de Frontend-Entwicklung
  2. blogwoman.de Frontend mit YouTube-Integration
  3. Design-System (Tailwind + Shadcn/UI)
  4. Frontend-Staging auf Hetzner 3

Langfristig (Q1 2026)

  1. Alle 9 Frontends entwickeln
  2. Migration von Plesk-Domains zu neuer Infra
  3. AI-gestützte Kommentar-Moderation
  4. Monitoring & Alerting Dashboard

📊 Service-URLs

Development (porwoll.tech)

Service URL Status
Portal https://porwoll.tech
Payload CMS https://pl.porwoll.tech
Redis Commander https://redis.porwoll.tech
Umami Analytics https://umami.porwoll.tech
Frontend porwoll.de https://porwoll-dev.porwoll.tech
(8 weitere) https://*-dev.porwoll.tech ⏸️ On-Demand

Production (Hetzner)

Service URL Status
Payload CMS https://cms.c2sgmbh.de
Umami Analytics https://analytics.c2sgmbh.de

🔧 Quick Commands

sv-frontend

# SSH Zugang
ssh frontend@10.10.181.104

# Service starten/stoppen
systemctl start frontend-porwoll
systemctl stop frontend-porwoll

# AI-Tools
claude  # Claude Code
codex   # Codex CLI
gemini  # Gemini CLI

Hetzner 3

# SSH Zugang
ssh payload@162.55.85.18

# Deploy
~/deploy.sh

# Logs
pm2 logs payload

📝 Änderungsprotokoll

15.02.2026

  • Monitoring & Alerting Dashboard implementiert:
    • 4 neue Collections: MonitoringSnapshots, MonitoringLogs, MonitoringAlertRules, MonitoringAlertHistory
    • Backend-Services: MonitoringService, PerformanceTracker, MonitoringLogger, AlertEvaluator, SnapshotCollector
    • 8 REST-Endpoints unter /api/monitoring/* + SSE-Stream
    • 5-Tab Admin Dashboard (System Health, Services, Performance, Alerts, Logs)
    • Data Retention Policies (7d/30d/90d)
    • 31 Tests für Monitoring-Module (Types, Service, Tracker, Logger, Evaluator)
    • Feature-Branch: feature/monitoring-dashboard

14.02.2026

  • YouTube Thumbnail-Download implementiert:
    • downloadAndUploadImage() Utility für Bild-Download → Payload Media
    • afterChange Hook auf YouTubeContent: Auto-Download bei leerem Thumbnail
    • afterChange Hook auf YouTubeChannels: Auto-Download Kanalbild
    • Bulk-Endpoint: POST /api/youtube/thumbnails/bulk (Super-Admin)
    • channelThumbnailUrl Feld zu YouTubeChannels hinzugefügt
  • Meta Kommentar-Sync abgeschlossen:
    • /api/community/sync verwendet jetzt UnifiedSyncService (alle Plattformen)
    • Vorher: Nur YouTube-Sync über Legacy-Service
    • Optionale Plattform-Filterung im Request-Body
  • CI/CD Pipeline fertiggestellt:
    • ESLint, TypeScript, Tests, Build, E2E in CI
    • Staging Auto-Deploy bei Push auf develop
    • Production Deploy mit Backup + Auto-Rollback
    • Security Scanning (Gitleaks, CodeQL, pnpm audit)
  • CLAUDE.md Dokumentation erweitert:
    • Community Management System vollständig dokumentiert
    • 14 API-Endpoints, Architektur-Diagramm, Meta-Integration
    • CI/CD Pipeline dokumentiert

13.02.2026

  • Payload CMS 3.69.0 → 3.76.1 Upgrade:
    • Login-Bug (#15243) mit hasMany Relationships ist in 3.76.1 behoben
    • Custom Admin Views funktionieren wieder (path-to-regexp Bug gefixt)
  • Next.js 15.5.9 → 16.2.0-canary.41 Upgrade
  • YouTube Analytics Dashboard implementiert:
    • 4-Tab-Dashboard (Übersicht, Videos, Audience, Engagement)
    • Kanal-Auswahl für Multi-Channel-Support
    • Tab-Switch-Crash und Channel-Selector Bugs gefixt
  • Admin-Nav Sidebar Refactoring:
    • Sidebar-Navigation auf nativen Payload-Stil umgestellt
    • Einheitliche Nav-Groups für alle Custom Views
  • tsx als explizite devDependency hinzugefügt (Queue-Worker Abhängigkeit)
  • Dokumentation konsolidiert:
    • Alle Versionsnummern aktualisiert
    • BUG_REPORT_CUSTOM_VIEWS.md entfernt (obsolet)
    • .env.example auf PostgreSQL korrigiert
    • README.md projektspezifisch ersetzt

17.01.2026

  • Dokumentation bereinigt:
    • docs/anleitungen/TODO.md gelöscht (redundant mit PROJECT_STATUS.md)
    • docs/STAGING-DEPLOYMENT.md auf Quick Reference reduziert
  • Payload 3.72.0 Login-Bug identifiziert:
    • Bug: Login schlägt fehl bei Usern mit hasMany Relationships (tenants, youtubeChannels)
    • GitHub Issue erstellt: #15243
    • Empfehlung: Bei 3.69.0 bleiben bis Fix verfügbar

09.01.2026

  • YtSeries Collection implementiert:
    • YouTube-Serien mit eigenem Branding (Logo, Farben)
    • Relationship zu YouTubeChannels
    • YouTube-Playlist-Integration
  • Community Management Phase 2:
    • Meta (Facebook/Instagram) OAuth-Integration
    • MetaAccounts Collection für Kontoverwaltung
    • Geplant: Kommentar-Synchronisation für Meta-Plattformen

05.01.2026

  • Community Management Phase 1:
    • YouTubeChannels Collection (Multi-Kanal-Verwaltung)
    • YouTubeContent Collection (Videos + Shorts)
    • YtNotifications Collection (Handlungsbedarf-System)
    • YouTube Operations Dashboard
    • Kommentar-Synchronisation via YouTube Data API
    • Community Reports (E-Mail)

29.12.2025

  • Dokumentation konsolidiert und aktualisiert:
    • CLAUDE.md: Collections (40+) und Blocks (37) vollständig dokumentiert
    • CLAUDE.md: Neue Collections (Products, Tags, Authors, Locations, Partners, Jobs, Downloads, Events)
    • CLAUDE.md: Neue Blocks (ImageSlider, Blogging, Team-Filter, Feature-Blocks, Interactive-Blocks)
    • CLAUDE.md: Globals-Abschnitt korrigiert (SiteSettings/Navigations sind jetzt Collections)
    • docs/INFRASTRUCTURE.md, docs/DEPLOYMENT.md aktualisiert
    • docs/anleitungen/*.md auf aktuelle URLs korrigiert

27.12.2025

  • Payload CMS Update 3.68.4 → 3.69.0
  • Bug-Fixes Admin Panel:
    • Login Redirect Loop behoben (formatAdminURL Fix)
    • Speichern-Button für User-Account repariert (Access Control)
    • Einstellungen-Gruppe in Navigation sichtbar (SEOSettings Access)
  • Datenbank-Schema aktualisiert (site_settings_id, navigations_id)
  • Nicht benötigte Dateien entfernt (custom login page, migrations_backup)
  • ImportMap regeneriert

18.12.2025

  • sv-frontend (LXC 704) komplett eingerichtet
  • 9 GitHub Repositories erstellt
  • Alle Next.js Projekte initialisiert
  • Systemd Services für alle Frontends
  • Caddy Routing für *-dev.porwoll.tech
  • AI-Tools (Claude Code, Codex, Gemini) installiert
  • Infrastruktur-Dokumentation aktualisiert

12.12.2025

  • sv-caddy mit Cloudflare DNS-Challenge
  • Wildcard SSL für porwoll.tech
  • Redis Commander auf sv-postgres
  • pgAdmin4 entfernt (MIME-Type Probleme)

11.12.2025

  • Hetzner 3 Production Setup
  • Payload CMS Migration
  • Umami Analytics Production
  • Redis Caching (Dev + Prod)
  • Package-Versionen synchronisiert

26.11.2025

  • Initial Payload CMS Setup
  • Multi-Tenant Plugin
  • PostgreSQL auf sv-postgres
  • Erste Tenants angelegt