Erweitert die Backup- und Restore-Skripte um die Möglichkeit, Staging-Umgebungen zu unterstützen. Fügt die Option `-dest stage` hinzu, um spezifische Konfigurationen für Staging zu verwenden, einschließlich separater Docker-Compose-Dateien und Datenbankcontainer. Dokumentation aktualisiert, um manuelle Tests und Umgebungsvariablen für Staging zu reflektieren.
Automatisiert pg_dump, .env, Compose und Git-Archiv mit Tag-Zuordnung, Retention (5) und Pre-Deploy-Hook nur für Prod.
Co-authored-by: Cursor <cursoragent@cursor.com>
update-remotes.sh bricht ab, wenn uncommitted Änderungen bestehen oder
HEAD nicht mit origin übereinstimmt.
Co-authored-by: Cursor <cursoragent@cursor.com>
Ersetzt irreführende 10001/10002-Werte durch relative Layer 1–3 innerhalb
von .app-tour-root und dokumentiert den Stacking-Context.
Co-authored-by: Cursor <cursoragent@cursor.com>
Erhöht den z-index des Tour-Overlays über app-tour-target-active, damit
das Modal in Schritt 8 (Stammcrew & Skipper) nicht von der Spotlight-Karte verdeckt wird.
Co-authored-by: Cursor <cursoragent@cursor.com>
Expliziter Compose-Healthcheck für das Backend, curl-Fallback und längeres
MAX_WAIT im Deploy-Skript; update-staging.sh lehnt -dest ab.
Co-authored-by: Cursor <cursoragent@cursor.com>
Fügt docker-compose.staging.yml, Staging-Dokumentation und -dest prod|stage
in update-prod.sh hinzu, damit Prod und Staging über ein Skript deploybar sind.
Co-authored-by: Cursor <cursoragent@cursor.com>
Nach gültigem Server-Cookie wird automatisch Passkey oder PIN zum Entsperren angeboten, statt die komplette Anmelde-Maske zu zeigen.
Co-authored-by: Cursor <cursoragent@cursor.com>
KPI-Karten bleiben auf schmalen Viewports in zwei Spalten, Header und Filter nutzen weniger vertikalen Platz.
Co-authored-by: Cursor <cursoragent@cursor.com>
Docker Compose did not forward the admin whitelist from .env, so production always treated every user as non-admin.
Co-authored-by: Cursor <cursoragent@cursor.com>
Show login instead of AdminDashboard on /admin when unauthenticated to avoid pointless admin API calls.
Co-authored-by: Cursor <cursoragent@cursor.com>
Detect admin access after login and expose a header button that opens /admin via client-side routing so the session stays unlocked when returning to the app.
Co-authored-by: Cursor <cursoragent@cursor.com>