Skip to content

fix(digest): count only newly appeared activities in daily digest#58

Merged
bin101 merged 1 commit into
mainfrom
fix/digest-only-new-activities
Jul 15, 2026
Merged

fix(digest): count only newly appeared activities in daily digest#58
bin101 merged 1 commit into
mainfrom
fix/digest-only-new-activities

Conversation

@bin101

@bin101 bin101 commented Jul 15, 2026

Copy link
Copy Markdown
Owner

Problem

Die tägliche Zusammenfassung dedupliziert Aktivitäten nur innerhalb des aktuellen Digest-Zeitraums. Eine Aktivität, die mehrere Tage im Strava-Feed bleibt, wurde daher in jeder täglichen Zusammenfassung erneut mitgezählt.

Lösung

  • build_digest_payload akzeptiert jetzt previous_entries — Run-History-Einträge von vor dem Digest-Zeitfenster (also bereits von früheren Zusammenfassungen abgedeckt).
  • Aktivitäts-IDs, die dort bereits vorkamen, werden aus allen drei Zählern (total, given, would_give) ausgeschlossen. Jede Zusammenfassung zählt somit nur neu hinzugekommene Aktivitäten.
  • Der Digest-Job in app.py teilt die History am Zeitstempel der letzten Zusammenfassung und übergibt beide Teile.
  • Nachrichtentext angepasst: „… neue Aktivitäten" statt „… Aktivitäten geprüft".
  • Abwärtskompatibel: Legacy-History-Einträge ohne ID-Listen behalten ihre Rohwerte (Ausschluss dort nicht möglich); ohne previous_entries ist das Verhalten unverändert.

Tests

6 neue Unit-Tests in tests/unit/test_notify.py (Ausschluss je Zähler, Default-Verhalten, Legacy-Einträge in beiden Richtungen).

Quality Gate: ruff check ✅ · ruff format ✅ · mypy ✅ · pytest 503 passed, Coverage 88 % ✅

🤖 Generated with Claude Code

Activities that linger in the Strava feed for several days were re-counted
in every daily digest. build_digest_payload now accepts previous_entries
(run-history entries from before the digest window) and excludes activity
IDs already reported by an earlier digest from the total/given/would_give
counts. Legacy history entries without ID lists keep their raw counts.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@bin101
bin101 merged commit 8b9e6db into main Jul 15, 2026
1 check passed
@bin101
bin101 deleted the fix/digest-only-new-activities branch July 15, 2026 05:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant