From 7488916a9e9fc4d5307ca4ecae2299bb7b4ba770 Mon Sep 17 00:00:00 2001 From: Sebastian Mayer Date: Fri, 29 May 2026 11:41:41 +0200 Subject: [PATCH] =?UTF-8?q?Fix:=20ern=C3=A4hrungsfachliche=20Auflagen=20au?= =?UTF-8?q?s=20der=20Abnahme=20umgesetzt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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) --- .../admin/app/(authed)/einstellungen/page.tsx | 10 +++ apps/admin/app/(authed)/page.tsx | 37 +++++++-- apps/admin/app/(authed)/wochenbudget/page.tsx | 17 +++- packages/api/src/trpc/health.test.ts | 42 +++++++++- .../api/src/trpc/routers/health/_shared.ts | 77 +++++++++++++++---- .../api/src/trpc/routers/health/tracking.ts | 3 +- 6 files changed, 160 insertions(+), 26 deletions(-) diff --git a/apps/admin/app/(authed)/einstellungen/page.tsx b/apps/admin/app/(authed)/einstellungen/page.tsx index 68410af..b4a98f1 100644 --- a/apps/admin/app/(authed)/einstellungen/page.tsx +++ b/apps/admin/app/(authed)/einstellungen/page.tsx @@ -693,6 +693,16 @@ export default function EinstellungenPage() { ))} + {goalsForm.calories < 1500 ? ( +
+ ⚠️ + + Ein Tagesziel unter 1.500 kcal liegt am unteren Rand des Grundbedarfs. + Sehr niedrige Ziele bitte nur in ärztlicher Absprache wählen. Das Minimum + beträgt 1.200 kcal. + +
+ ) : null}