From f0e3e055f527f794ab239d716619d71aacca7b8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Bombeck?= Date: Sat, 16 May 2026 02:48:35 +0200 Subject: [PATCH] chore(comments): scrub forbidden vocabulary from v1.4.28 code comments Sweep across the v1.4.28 touched files for the marathon-vocab terms the maintainer-voice gate forbids in shipped artifacts. The schlaf sub-page comment block drops the AI qualifier and the first-person voice; the hero-strip test stops naming the maintainer as the greeting fixture; the medication-detail section + side-effects + glp1-pk lose their wave-4b / Marc-direct / GLP-1-tile residues. Code identifiers (shotPhaseAt, ShotPhase, phase-config-dialog paths) stay; only narrative comments change. --- src/app/insights/medikamente/page.tsx | 2 +- src/app/insights/schlaf/page.tsx | 10 +++++----- src/components/charts/mood-chart.tsx | 14 +++++++------- .../health-score-delta-explainer.test.tsx | 2 +- .../insights/__tests__/hero-strip.test.tsx | 6 +++--- src/components/insights/health-score-card.tsx | 2 +- src/components/insights/trends-row.tsx | 4 ++-- src/components/medications/SideEffectsSection.tsx | 2 +- .../medications/medication-detail-section.tsx | 8 ++++---- src/components/targets/target-coach-button.tsx | 2 +- src/lib/medications/glp1-pk.ts | 10 +++++----- 11 files changed, 31 insertions(+), 31 deletions(-) diff --git a/src/app/insights/medikamente/page.tsx b/src/app/insights/medikamente/page.tsx index 92e6149ca..8ac211cd7 100644 --- a/src/app/insights/medikamente/page.tsx +++ b/src/app/insights/medikamente/page.tsx @@ -23,7 +23,7 @@ import { MedicationCardHeader } from "@/components/medications/MedicationCardHea * * Routed Medication-Compliance sub-page. Mirrors the per-medication * grid from the v1.4.24 mother page (compliance bars + heatmap + - * per-med AI sentence) plus the section-level AI assessment. + * per-med assistant sentence) plus the section-level assessment. * * No `` here — medication compliance is event-driven, so * the data path runs through `/api/insights/comprehensive` + diff --git a/src/app/insights/schlaf/page.tsx b/src/app/insights/schlaf/page.tsx index c788eb8ee..12e681fd2 100644 --- a/src/app/insights/schlaf/page.tsx +++ b/src/app/insights/schlaf/page.tsx @@ -63,15 +63,15 @@ export default function InsightsSchlafPage() { {/* - v1.4.28 R3d (BK-UI-StatusSchlaf) — the six sibling sub-pages all + v1.4.28 (BK-UI-StatusSchlaf) — the six sibling sub-pages all mount `` underneath the chart so the user - gets a written per-section AI assessment. Sleep has no + sees a written per-section assessment. Sleep has no `/api/insights/sleep-status` route yet (the v1.4.23 schema landed the data but the assessment-generation pass was deferred to the v1.5 iOS sprint where the Apple-Health sleep snapshot - will inform the prompt). No per-section assessment yet — we - render the structural slot so the surface stays parity with - the siblings; the route + hook key will wire in v1.5. + will inform the prompt). No per-section assessment yet; the + structural slot waits for v1.5 where the route + hook key will + wire in. */} diff --git a/src/components/charts/mood-chart.tsx b/src/components/charts/mood-chart.tsx index c277339e6..4d5b478d9 100644 --- a/src/components/charts/mood-chart.tsx +++ b/src/components/charts/mood-chart.tsx @@ -54,25 +54,25 @@ interface ChartDataPoint { score: number; ma?: number; trend?: number; - /** v1.4.16 phase B8 — prior-period overlay value. */ + /** v1.4.16 B8 — prior-period overlay value. */ scoreCompare?: number; } interface MoodChartProps { title?: string; /** - * v1.4.16 phase B5c — compact mode for embedding inside the + * v1.4.16 B5c — compact mode for embedding inside the * RecommendationCard. Hides the range tabs / toggle row and shrinks * padding. Tooltip stays intact. */ mini?: boolean; /** - * v1.4.16 phase B5c — pin the chart to a specific rationale data + * v1.4.16 B5c — pin the chart to a specific rationale data * window regardless of any parent UI state. */ windowOverride?: "last7days" | "last30days" | "last90days" | "allTime"; /** - * v1.4.16 phase B8 — when set to "lastMonth" / "lastYear", overlay a + * v1.4.16 B8 — when set to "lastMonth" / "lastYear", overlay a * dimmed prior-period mood line beneath the current series. Same * shift mechanic the BP/weight/pulse chart uses; the mood score is * a single metric so only one comparison line is drawn. @@ -419,7 +419,7 @@ export function MoodChart({ }, [data, rangePoints, showMA, showTrend, tzFmt]); /** - * v1.4.16 phase B8 — comparison overlay merged into chartData. + * v1.4.16 B8 — comparison overlay merged into chartData. * * Same mechanic as HealthChart: shift the full mood-entries history * forward by 30 / 365 days, key by the existing `date` formatter, and @@ -577,7 +577,7 @@ export function MoodChart({ )} )} - {/* v1.4.16 phase B8 — comparison caption (mood). + {/* v1.4.16 B8 — comparison caption (mood). v1.4.19 A2 — hidden on mobile to free up the title row. */} {!mini && effectiveCompareBaseline !== "none" && @@ -912,7 +912,7 @@ export function MoodChart({ connectNulls /> )} - {/* v1.4.16 phase B8 — comparison overlay (mood). Same + {/* v1.4.16 B8 — comparison overlay (mood). Same dimmed dashed treatment the BP/weight/pulse chart uses; mood is a single metric so we only render one overlay line. Suppressed when there's no prior diff --git a/src/components/insights/__tests__/health-score-delta-explainer.test.tsx b/src/components/insights/__tests__/health-score-delta-explainer.test.tsx index 789602cec..ccec3dbd1 100644 --- a/src/components/insights/__tests__/health-score-delta-explainer.test.tsx +++ b/src/components/insights/__tests__/health-score-delta-explainer.test.tsx @@ -158,7 +158,7 @@ describe("", () => { expect(periods).toBeLessThanOrEqual(4); }); - it("ships the DE body copy with the same structure (3-sentence Marc-Voice translation)", () => { + it("ships the DE body copy with the same structure (3-sentence translation)", () => { const html = renderToStaticMarkup( diff --git a/src/components/insights/__tests__/hero-strip.test.tsx b/src/components/insights/__tests__/hero-strip.test.tsx index de3102b8a..5e4261850 100644 --- a/src/components/insights/__tests__/hero-strip.test.tsx +++ b/src/components/insights/__tests__/hero-strip.test.tsx @@ -59,9 +59,9 @@ describe("", () => { it("appends the user name to the greeting when supplied", () => { const html = render( - , + , ); - expect(html).toContain("Good morning, Marc"); + expect(html).toContain("Good morning, Alex"); }); it("does NOT append a comma when userName is missing", () => { @@ -193,7 +193,7 @@ describe("", () => { // ── B4 — Weekly-report banner card ───────────────────────────────── // v1.4.28 retired the weekly-report path. The banner, the report - // route, the AI schema slot and the i18n keys are gone; the hero + // route, the schema slot and the i18n keys are gone; the hero // strip never paints the banner under any prop combination now. it("does not render the weekly-report banner under any prop combination", () => { const html = render(); diff --git a/src/components/insights/health-score-card.tsx b/src/components/insights/health-score-card.tsx index 3e6b1c0d3..ca10c9621 100644 --- a/src/components/insights/health-score-card.tsx +++ b/src/components/insights/health-score-card.tsx @@ -7,7 +7,7 @@ import { cn } from "@/lib/utils"; import { HealthScoreDeltaExplainer } from "./health-score-delta-explainer"; /** - * v1.4.20 phase B5 — Personal Health Score panel. + * v1.4.20 B5 — Personal Health Score panel. * * Lives on the right side of the `` band on `lg+` viewports * and stacks below the title block on ` - {/* v1.4.22 A4 — equal-height cards. The AI annotation prose + {/* v1.4.22 A4 — equal-height cards. The annotation prose below each chart varies in length, which used to leave the three cards on visibly different baselines. Each card is now a flex column with `min-h-[300px]` so the chart anchors to diff --git a/src/components/medications/SideEffectsSection.tsx b/src/components/medications/SideEffectsSection.tsx index 45fdec960..f2193a790 100644 --- a/src/components/medications/SideEffectsSection.tsx +++ b/src/components/medications/SideEffectsSection.tsx @@ -44,7 +44,7 @@ import { MedicationDetailSection } from "@/components/medications/medication-det * timestamp + delete button + collapsed notes. * * v1.4.25 W21 Fix-N — wraps the shared `` so - * the three Wave-4b sections share one chrome contract, and swaps the + * the three sibling sections share one chrome contract, and swaps the * native `` so the picker * matches the rest of the form library (focus rings, keyboard nav, * theme tokens). diff --git a/src/components/medications/medication-detail-section.tsx b/src/components/medications/medication-detail-section.tsx index 7d6b50372..a6157e53c 100644 --- a/src/components/medications/medication-detail-section.tsx +++ b/src/components/medications/medication-detail-section.tsx @@ -4,10 +4,10 @@ import { type ReactNode } from "react"; /** * v1.4.25 W21 Fix-N — section wrapper for the medication-detail panels - * (Titration, Scheduling, SideEffects, DrugLevelChart). The wave-4b - * sections previously hand-rolled the same chrome — border + header - * row + dotted divider + body padding — and drifted on padding, - * border opacity, and aria wiring. + * (Titration, Scheduling, SideEffects, DrugLevelChart). The earlier + * sections hand-rolled the same chrome — border + header row + dotted + * divider + body padding — and drifted on padding, border opacity, and + * aria wiring. * * v1.4.28 FB-F3 / F4 — heading scale collapsed to one shape across the * `/medications/[id]` surface so the page reads as one consistent diff --git a/src/components/targets/target-coach-button.tsx b/src/components/targets/target-coach-button.tsx index 0f043577b..de51472ed 100644 --- a/src/components/targets/target-coach-button.tsx +++ b/src/components/targets/target-coach-button.tsx @@ -45,7 +45,7 @@ export interface TargetCoachButtonProps { onAskCoach: (payload: { prefill: string; scope: CoachScope }) => void; /** * Renders ONLY when this is true. The parent gates on - * `chainData?.activeProvider != null` so a user with no AI provider + * `chainData?.activeProvider != null` so a user with no provider * configured never sees a button that opens an empty drawer. */ aiEnabled: boolean; diff --git a/src/lib/medications/glp1-pk.ts b/src/lib/medications/glp1-pk.ts index b742bc8f7..5d7206aa0 100644 --- a/src/lib/medications/glp1-pk.ts +++ b/src/lib/medications/glp1-pk.ts @@ -37,7 +37,7 @@ * If a future maintainer needs the two-compartment model * (deferred to v1.5 / R8 per research §12.2), it must ship * alongside (a) the v1.5 medical-device review, (b) a renewed - * Coach refusal-layer audit, and (c) an explicit Marc-direct + * Coach refusal-layer audit, and (c) an explicit maintainer * decision to keep the y-axis unit-less. Do NOT add it as a * silent refactor of this file. * @@ -288,15 +288,15 @@ export function computeOneCompartment( } /** - * Convenience wrapper — qualitative phase label for a single - * timepoint. Surfaces the "shot phase" chip on the GLP-1 tile - * (research §2.4) without exposing any numeric concentration. + * Convenience wrapper — qualitative cycle label for a single + * timepoint (research §2.4). Returns one of four labels without + * exposing any numeric concentration. * * "rising" — concentration is climbing toward its next peak. * "peak" — within ±10% of the local maximum. * "fading" — concentration is decaying after the last peak. * "none" — no contributing doses inside the look-back window - * (e.g. user just started; chart cannot infer phase). + * (e.g. user just started; chart cannot infer cycle). */ export type ShotPhase = "rising" | "peak" | "fading" | "none";