iOS-Voll-App M0: Media-Registry (iCloud-Hybrid) — Originale in Nutzer-CloudKit, Server nur Previews: POST/PATCH/GET /api/media (register/confirm/mine/original-Fallback), Phantom-URL+iCloud-404 in serve_media, Registry-Cleanup in Delete-Pfaden, media_items mit storage+ck_record_name; Datenschutz v5 (CloudKit); Fixes: daily_photo_cache in zentrale Migration (Löschen warf auf frischer DB 500), Preview/Thumb-Leichen beim Medium-Löschen; 9 neue Tests, Suite 73 grün

This commit is contained in:
rene 2026-06-10 19:58:30 +02:00
parent 40d117874b
commit bf5df11f78
7 changed files with 565 additions and 3 deletions

View file

@ -312,6 +312,19 @@
schreibt die App abgeschlossene Touren als „Walking"-Workout inkl. Route in Apple
Health. Es werden <strong>keine</strong> Gesundheitsdaten aus Apple Health gelesen.
Diese Daten verbleiben auf deinem Gerät bzw. in deiner iCloud.</li>
<li><strong>iCloud-Fotospeicher (CloudKit):</strong> Fotos, die du in der App zu
Tagebuch oder Touren hinzufügst, speichert die App in voller Auflösung in
<strong>deiner privaten iCloud</strong> (Apple CloudKit); sie zählen zu deinem
iCloud-Speicherplatz. Unser Server erhält und speichert nur eine verkleinerte
Vorschau (max. 800&nbsp;px), damit deine Inhalte auch im Web sichtbar sind — auf
die Originale in deiner iCloud können wir <strong>nicht</strong> zugreifen.
Ist kein iCloud-Konto angemeldet oder dein iCloud-Speicher voll, wird stattdessen
wie bisher eine komprimierte Fassung auf unserem Server gespeichert. Löschst du
ein Medium in der App, wird auch der iCloud-Eintrag entfernt; löschst du es im
Web, räumt die App den iCloud-Eintrag bei der nächsten Synchronisierung auf.
Nach einer Account-Löschung entfernen wir Vorschauen und Verweise auf unserem
Server — die Originale in deiner iCloud bleiben unter deiner alleinigen Kontrolle
(Einstellungen&nbsp;→ iCloud&nbsp;→ Speicher verwalten&nbsp;→ Ban&nbsp;Yaro).</li>
<li><strong>Apple Maps:</strong> Zur Navigation (z. B. zu Gassi-Treffen) kann auf deinen
Wunsch Apple Maps geöffnet werden.</li>
<li><strong>GPX-Import:</strong> Aus anderen Apps geteilte GPX-Dateien werden lokal auf
@ -495,7 +508,7 @@
</section>
<p style="font-size:var(--text-xs);color:var(--c-text-muted);margin:0">
Stand: Juni 2026 · Version 4
Stand: Juni 2026 · Version 5
</p>
</div>