Tagesfoto-Cache validieren + bei Diary/Media-Löschung mit-bereinigen
Bug: daily_photo_cache zeigte auf gelöschte Tagebuch-Foto-URLs, weil Löschen eines Eintrags oder einzelnen Medien-Items den Cache nicht mit-bereinigte. Heim-Tab in der iOS-App lud dann 404 → kein Tagesbild. Fix in dogs.py /welcome-dashboard: - Bevor das Cache-Foto zurückgegeben wird, prüfen ob die URL noch in diary_media existiert. Wenn nicht: Cache-Eintrag löschen und neu wählen → selbstheilend für alte verwaiste Einträge. Fix in diary.py: - delete_diary: vor dem CASCADE-Delete von diary_media die URLs sammeln und alle daily_photo_cache-Zeilen darauf löschen. - delete_media_item: gleicher Cleanup für die eine URL. Cache ist klein (max 1 Eintrag pro Hund pro Tag) — Hygiene-Cleanup ist günstig und macht das System defensiv.
This commit is contained in:
parent
f934560a12
commit
d23d696745
7 changed files with 42 additions and 16 deletions
|
|
@ -86,14 +86,14 @@
|
|||
<title>Ban Yaro</title>
|
||||
|
||||
<!-- Theme + theme-color Statusleiste vor CSS setzen -->
|
||||
<script src="/js/boot-early.js?v=1139"></script>
|
||||
<script src="/js/boot-early.js?v=1140"></script>
|
||||
|
||||
<!-- CSS: Reihenfolge ist wichtig — ?v= zwingt Browser zur Neuladung -->
|
||||
<link rel="stylesheet" href="/css/design-system.css?v=1139">
|
||||
<link rel="stylesheet" href="/css/layout.css?v=1139">
|
||||
<link rel="stylesheet" href="/css/components.css?v=1139">
|
||||
<link rel="stylesheet" href="/css/utilities.css?v=1139">
|
||||
<link rel="stylesheet" href="/css/lists.css?v=1139">
|
||||
<link rel="stylesheet" href="/css/design-system.css?v=1140">
|
||||
<link rel="stylesheet" href="/css/layout.css?v=1140">
|
||||
<link rel="stylesheet" href="/css/components.css?v=1140">
|
||||
<link rel="stylesheet" href="/css/utilities.css?v=1140">
|
||||
<link rel="stylesheet" href="/css/lists.css?v=1140">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
|
|
@ -617,11 +617,11 @@
|
|||
<div id="modal-container"></div>
|
||||
|
||||
<!-- JS: Reihenfolge ist wichtig — erst Basis, dann Features -->
|
||||
<script src="/js/api.js?v=1139"></script>
|
||||
<script src="/js/ui.js?v=1139"></script>
|
||||
<script src="/js/app.js?v=1139"></script>
|
||||
<script src="/js/worlds.js?v=1139"></script>
|
||||
<script src="/js/offline-indicator.js?v=1139"></script>
|
||||
<script src="/js/api.js?v=1140"></script>
|
||||
<script src="/js/ui.js?v=1140"></script>
|
||||
<script src="/js/app.js?v=1140"></script>
|
||||
<script src="/js/worlds.js?v=1140"></script>
|
||||
<script src="/js/offline-indicator.js?v=1140"></script>
|
||||
|
||||
<!-- Feature-Seiten werden lazy geladen -->
|
||||
|
||||
|
|
@ -631,7 +631,7 @@
|
|||
|
||||
|
||||
<!-- Boot: Offline-Banner + SW-Registration (extrahiert für CSP) -->
|
||||
<script src="/js/boot.js?v=1139"></script>
|
||||
<script src="/js/boot.js?v=1140"></script>
|
||||
|
||||
|
||||
</body>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue