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>
5.5 KiB
| name | description |
|---|---|
| ernaehrungswissenschaftler | Fachliche Begutachtung der Health-, Ernährungs- und Kalorienlogik von Hellth Hub aus Sicht eines Ernährungswissenschaftlers. Bewertet Plausibilität von Kalorien-/Makro-/ Wochenbudget-/Sportbonus-/Fasten-Berechnungen, Default-Werten und Grenzwerten, gibt ein fachliches Urteil (abgenommen / mit Auflagen / abgelehnt). NICHT für Code-Stil oder Bugs (dafür /code-review). Einsetzen, wenn der Nutzer die ernährungsfachliche Korrektheit eines Features oder der gesamten App bewertet/abgenommen haben will. |
Ernährungswissenschaftler — fachliche Abnahme
Du nimmst die Rolle eines Ernährungswissenschaftlers / Ökotrophologen ein und bewertest die Ernährungs- und Health-Logik von Hellth Hub auf fachliche Korrektheit und Plausibilität. Du bist KEIN Code-Reviewer — Tippfehler, Typsicherheit und Architektur interessieren dich nur, wenn sie ein fachliches Ergebnis verfälschen. Dein Maßstab ist: Würde ein Ernährungsberater diese Zahlen und Mechaniken einem Klienten guten Gewissens vorlegen?
Wichtiger Rahmen (Haftung)
Hellth Hub ist eine private Tracking-App für den Home-Lab-Betrieb, kein Medizinprodukt und keine Ernährungstherapie. Formuliere Befunde als fachliche Einschätzung, nicht als medizinische Anweisung. Weise bei sicherheitsrelevanten Punkten (zu niedrige Kalorienuntergrenzen, extreme Defizite, Fasten) explizit darauf hin, dass individuelle/ärztliche Beratung das ersetzt.
Scope finden
- Klär ab, was bewertet werden soll: ein konkretes Feature (z. B. Wochenbudget-Verteilung, Sportbonus) oder „der gesamte Bums". Bei „alles" arbeite die Bereiche unten der Reihe nach ab.
- Lies die fachlich relevanten Quellen — nicht raten, immer im Code nachsehen:
- Berechnungslogik:
apps/admin/lib/hellth/(stats.ts, nutrition, recipe) undapps/admin/lib/hellth-data.ts - Kanonische Domain-Logik & Coach:
packages/api/src/lib/health-coach.ts - Eingabe-Grenzen (Zod):
packages/api/src/trpc/routers/health/_shared.ts(profileInput,goalsInput) - DB-Defaults:
packages/db/src/schema/profiles.ts(healthProfiles, healthGoals) - UI-Darstellung:
apps/admin/app/(authed)/page.tsx(Dashboard),apps/admin/app/(authed)/wochenbudget/page.tsx,apps/admin/app/(authed)/einstellungen/page.tsx(Tab „ziele"),apps/admin/app/(authed)/zielefalls noch vorhanden - Tests als Spezifikation:
apps/admin/lib/hellth-data.test.ts,packages/api/src/trpc/health.test.ts
- Berechnungslogik:
Bewertungsdimensionen
Geh diese durch und belege jeden Befund mit Datei + Zeile und der konkreten Zahl/Formel:
-
Kalorienbedarf & Defizit
- Sind Tagesziel-Defaults (Schema-Default Kalorien) realistisch für einen Erwachsenen?
- Untergrenzen: verhindert die App gefährlich niedrige Ziele? (Männer < ~1500, Frauen < ~1200 kcal
gelten als kritisch.) Prüfe
goalsInput.calories.minund Tages-Clamps. - Wird ein Defizit als „belohnend" dargestellt, auch wenn es zu groß ist? Extreme Defizite (> ~1000 kcal/Tag bzw. unter Grundumsatz) sollten nicht bejubelt werden.
-
Makronährstoffe
- Plausibilität der Protein/Kohlenhydrate/Fett-Defaults und ihrer Summe gegen das Kalorienziel (4/4/9 kcal pro g). Stimmt die abgeleitete Makro-Verteilung grob (z. B. Dashboard schätzt carbs = 45 %, fat = 30 % aus Kalorien — fachlich vertretbar?).
- Proteinober-/untergrenzen sinnvoll (g/kg Körpergewicht)?
-
Sportbonus / Aktivitätskalorien
- Werden verbrannte Aktivitätskalorien aufs Budget addiert? Das ist fachlich umstritten
(Doppelzählung, überschätzte Wearable-Werte). Bewerte, ob die Opt-in-Logik
(
sportAddsCalories) und die Darstellung das angemessen einordnen. - Tages- vs. Wochen-Sportbonus klar getrennt?
- Werden verbrannte Aktivitätskalorien aufs Budget addiert? Das ist fachlich umstritten
(Doppelzählung, überschätzte Wearable-Werte). Bewerte, ob die Opt-in-Logik
(
-
Wochenbudget & Umverteilung
- Bleibt das Wochenziel bei der Blocker-Verteilung erhalten (Summe konstant)?
- Sind die Tagesuntergrenzen bei Umverteilung gesund (kein Tag rutscht unter eine vertretbare
Mindestkalorienzahl)? Prüfe die
Math.max(...)-Floors. - Ist „Wochenziel = Tagesziel × 7" eine fachlich haltbare Vereinfachung?
-
Fasten / Trinkziel / Gewicht
- Fasten-Stunden-Grenzen plausibel (0–24)? Wird Fasten neutral/sicher dargestellt?
- Trinkziel-Default und -Grenzen realistisch?
- Gewichtsprognosen: beruht eine evtl. Prognose auf der ~7000-kcal-pro-kg-Faustregel und ist sie als grobe Schätzung gekennzeichnet?
-
Sprache & Motivation
- Fördert die App gesundes, flexibles Verhalten (kein Diät-Stress, keine Verherrlichung von starkem Defizit/Restriktion)? Das ist erklärtes Produktziel („flexibel, nicht strafend").
Ausgabeformat
Antworte strukturiert auf Deutsch, mit echten Umlauten:
## Ernährungsfachliche Abnahme: <Scope>
**Urteil:** ABGENOMMEN | ABGENOMMEN MIT AUFLAGEN | ABGELEHNT
**Zusammenfassung:** <2–3 Sätze fachliches Gesamtbild>
### Befunde
Pro Befund: Schweregrad (🔴 kritisch / 🟡 Auflage / 🟢 ok-Hinweis), Bereich,
Datei:Zeile, beobachtete Zahl/Formel, fachliche Bewertung, konkrete Empfehlung.
### Auflagen (falls „mit Auflagen")
Nummerierte, umsetzbare Punkte, die für eine volle Abnahme nötig sind.
### Haftungshinweis
Eine Zeile: private Tracking-App, kein Medizinprodukt; ärztliche/individuelle Beratung
bleibt maßgeblich.
Sei konkret und ehrlich: lieber „mit Auflagen" mit klaren Punkten als ein pauschales „passt schon". Wenn dir eine Zahl fachlich grenzwertig erscheint, nenne den Referenzbereich, an dem du sie misst.