Nachbesserungen aus der fachlichen Begutachtung (Skill
ernaehrungswissenschaftler):
- Kalorien-Untergrenze von 800 auf 1.200 kcal angehoben (goalsInput und
upsertWeeklyCaloriePlan, neue Konstante MIN_CALORIE_GOAL). Im Ziele-Tab
Sicherheitswarnung bei einem Ziel unter 1.500 kcal.
- Defizit-Banner wird nur noch bei moderatem Defizit (10-25 % unter dem
Basis-Tagesziel) gefeiert und gegen baseDailyGoal statt inkl. Sportbonus
gerechnet. Bei einem Defizit über 25 % erscheint stattdessen ein sanfter
"iss genug"-Hinweis statt Lob.
- Wochenbudget-Verteilung: der am 1.200-Floor gekappte Rest wird iterativ
auf die übrigen Tage weiterverteilt, sodass das Wochenbudget erhalten
bleibt, solange es geht. Neue Funktion weeklyExtrasOverflow meldet den
unvermeidbaren Überschuss; die Wochenbudget-Seite weist ihn ehrlich aus
statt pauschal "bleibt gleich" zu versprechen.
- Dashboard-Makros: Kohlenhydrate und Fett als geschätzt (~) gekennzeichnet
inkl. erklärendem Hinweis; Protein bleibt real getrackt.
- 2 neue API-Tests (iterative Floor-Verteilung, weeklyExtrasOverflow).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Health-/Ernährungslogik überarbeitet:
- Fix: upsertProfile speichert fehlende Größe/Gewicht als null statt 0
(Round-Trip-Bug: gespeicherte 0 scheiterte beim erneuten Speichern an
z.number().positive()). Frontend clampt zudem mealsPerDay/cooksPerDay
auf die Zod-Grenzen. 3 neue API-Tests.
- Ziele-Bearbeitung vom Standalone /ziele in den Einstellungen-Tab
?tab=ziele gezogen; /ziele-Seite + Sidebar-Eintrag entfernt. Liest/
schreibt jetzt aus der DB (vorher las der Tab veraltetes localStorage).
- Wochenziel wird automatisch als Tagesziel × 7 berechnet (Feld entfällt).
- Sportbonus klar dargestellt: Tagesansicht addiert den heutigen Sport
aufs Budget (nur wenn sportAddsCalories aktiv) mit Bolt-Badge; Wochen-
Box mit Icon und Info "ganze Woche". Dashboard invalidiert alle
statsSummary-Varianten.
- Belohnende Banner bei Sport heute und bei Kaloriendefizit.
- Doku: rules.md-Verweis auf docs/projektreferenz.md korrigiert.
- Neuer Skill: ernaehrungswissenschaftler (fachliche Abnahme der
Health-Logik).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sichtbare Texte in einstellungen/page.tsx und settings-tabs.tsx von
ASCII-Ersatz (ae/oe/ue/ss) auf echte Umlaute (ä/ö/ü/ß) umgestellt:
Ernährung, Präferenzen, persönlich, Straße, Eiweiß, Kochvorgänge,
Passwörter, für, über, groß u. a. Tab-id-Slug "ernaehrung" bleibt
ASCII (URL-Parameter).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>