- Feiertage: isWerktag berücksichtigt jetzt die 9 bundesweiten gesetzlichen
Feiertage (Oster-Computus + feste Tage) → ein Feiertag bricht die Streak
nicht mehr (zählt wie ein Wochenende neutral). Landesspezifische Feiertage
bewusst (noch) nicht enthalten.
- Wochenend-Edge: Reflexion an Sa/So setzte die angezeigte Streak auf 0
(Schleife brach am Nicht-Werktag ab). Jetzt wird übersprungen statt gebrochen.
- Lookback von 120 auf 400 Tage erhöht, damit lange Streaks nicht
abgeschnitten werden.
- Streak-Zähllogik in reine, getestete countStreakDays() ausgelagert
(8 Streak- + 5 Feiertags-Tests).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>