Load root .env for Prisma, stop dev servers via process groups, and sync server lockfile metadata after install.
Co-authored-by: Cursor <cursoragent@cursor.com>
Query device COG when opening the course dialog, mirroring SOG prefill, with fallback to the last logged course.
Co-authored-by: Cursor <cursoragent@cursor.com>
Users mostly log via Live mode, so default to it with large sticky actions, in-stream event editing, day chips, and an overflow menu while keeping the day list as a secondary view.
Co-authored-by: Cursor <cursoragent@cursor.com>
Bei fehlgeschlagenem Auto-Abruf nächste BSH-Stationen anbieten; Reisetag
korrekt aus dem Eintrag parsen und Vergangenheitshinweis anzeigen.
Co-authored-by: Cursor <cursoragent@cursor.com>
Amtliche BSH-Wasserstandsvorhersage ersetzt Open-Meteo als Primärquelle;
nächster Pegel per Haversine, Open-Meteo nur außerhalb 75 km Reichweite.
Co-authored-by: Cursor <cursoragent@cursor.com>
Google Search Console: echte robots.txt und sitemap.xml für Produktion;
Staging blockiert Crawler per X-Robots-Tag und Disallow in robots.txt.
Co-authored-by: Cursor <cursoragent@cursor.com>
Ort oder GPS-Koordinaten werden im Entry-Payload persistiert und im
Tiden-Accordion sowie im Live-Journal-Modal als lesbare Zeile angezeigt.
Co-authored-by: Cursor <cursoragent@cursor.com>
HW/NW-Felder im Reisetag und Live-Journal mit Server-Proxy auf Basis von
Open-Meteo Marine am GPS-Standort; neueste Position und frischer DB-Stand
vor dem Abruf, Bestätigung nach Übernehmen, Accordion-Layout bereinigt.
Co-authored-by: Cursor <cursoragent@cursor.com>
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>