Fix: Anniversary-Job + RASFF 404, SW by-v1120

Aus Container-Log gefundene Backend-Errors:

1. _job_anniversary_reminders: 'no such column: d.user_id'
   diary-Tabelle hat keine user_id — User-Bezug geht über dogs.user_id.
   → JOIN dogs ON dogs.id = d.dog_id ergänzt + SELECT dogs.user_id.
   Job läuft täglich 09:00 — war seit Tag X kaputt, kein Push für
   Jahrestage gesendet.

2. RASFF API 404 (EU Rapid Alert System for Food and Feed):
   webgate.ec.europa.eu/rasff-window/backend/public/... ist umgezogen.
   → HTTPStatusError mit 404/410/503 wird jetzt nur als WARNING geloggt
   (vorher ERROR → Error-Digest spammte täglich). Fallback ist eh schon
   ein leeres Array, App läuft weiter. EU-Endpoint-URL muss nochmal
   recherchiert werden, dann RASFF_URL aktualisieren — Folge-Sprint.
This commit is contained in:
rene 2026-05-27 14:51:34 +02:00
parent c7a84438d1
commit 26b515cede
7 changed files with 35 additions and 18 deletions

View file

@ -1840,11 +1840,13 @@ async def _job_anniversary_reminders():
logger.info(f"Jahrestags-Erinnerungen Job läuft für {today_md}")
with db() as conn:
# diary hat keinen user_id — User kommt über dogs.user_id
entries = conn.execute("""
SELECT d.id, d.titel, d.datum, d.user_id, d.dog_id,
SELECT d.id, d.titel, d.datum, dogs.user_id, d.dog_id,
(SELECT dm.url FROM diary_media dm
WHERE dm.diary_id=d.id LIMIT 1) AS foto_url
FROM diary d
JOIN dogs ON dogs.id = d.dog_id
WHERE strftime('%m-%d', d.datum) = ?
AND d.datum < date('now')
AND d.titel IS NOT NULL