Skip to content

fix(features): remove SaMD-adjacent claims + clinical framing#40

Merged
MP2EZ merged 1 commit into
previewfrom
fix/features-clinical-claims
May 26, 2026
Merged

fix(features): remove SaMD-adjacent claims + clinical framing#40
MP2EZ merged 1 commit into
previewfrom
fix/features-clinical-claims

Conversation

@MP2EZ
Copy link
Copy Markdown
Owner

@MP2EZ MP2EZ commented May 26, 2026

Summary

Compliance + crisis agents both flagged the /features page (currently live on being.fyi) for SaMD-adjacent language: `Auto-detects severe depression`, `Crisis support triggered automatically`, `Auto-triggered on PHQ-9 ≥20 or GAD-7 ≥15`. That's the textbook FDA definition of medical-device software ("identifies a clinical condition and takes action"), and it directly contradicts Being's wellness-app positioning per `regulatory-applicability.md` §FDA. Site went live yesterday; Apple/TestFlight reviewers may visit.

This PR rewrites the page to consumer-wellness register.

What's hot

Removed (SaMD vector):

  • "Auto-detects severe depression / severe anxiety" → "Flags elevated scores (PHQ-9 ≥20) and surfaces crisis resources"
  • "Crisis support triggered automatically" → "Always one tap from 988 and Crisis Text Line"
  • "Integrated with crisis protocols" → same
  • "Auto-triggered on PHQ-9 ≥20 or GAD-7 ≥15" → "Surfaced immediately when self-assessment scores are elevated"

Shifted (clinical → consumer wellness register):

  • Section title: "Mental Health Self-Monitoring" → "Mood & Wellbeing Tracking"
  • "Standardized self-assessments" / "mental health patterns" → "Research-based reflection tools" / "mood and wellbeing patterns"
  • Card headers: "PHQ-9 (Depression)" → "PHQ-9 Mood Self-Assessment" (same for GAD-7)
  • "monitoring depression symptoms" / "monitor anxiety symptoms" → "tracking mood patterns" / "tracking anxious thought and feeling patterns"
  • Privacy: "mental health data" → "wellbeing data" (for internal consistency)
  • "Military-grade encryption" → "AES-256 encryption" (drop empty marketing, keep concrete claim)
  • Hero: "modern mental health science" → "modern wellbeing research"
  • CTA: "evidence-based self-monitoring tools" → "research-based self-reflection tools"

Safety additions:

  • 988 callout now names both modes: "Call 988 or text HOME to 741741" (was only "one tap to connect" — only-call framing flagged by crisis agent)
  • 988 callout restyled from solid `bg-info` (bright blue + white text) to crisis token family (`bg-crisis-bg` + `text-crisis-text` + `border-crisis-border`) — muted, on-brand, consistent with footer crisis box treatment
  • "24/7 Crisis Support" → "24/7 Crisis Resource Access" (Being surfaces resources; doesn't itself provide support — crisis-agent precision note)

Removed from rewrite by agent re-review:

  • First rewrite added "scores remain comparable to those you might see from a healthcare provider" as a justification for using standard PHQ-9 wording. Both compliance and crisis agents independently flagged this as a NEW SaMD-adjacent claim ("implies Being is part of a care pathway"). Now reads: "self-reported scores stay consistent, letting you track your own patterns."

What this PR does NOT change

  • The five Stoic-philosophy + Daily Check-Ins sections — already in wellness register
  • The Privacy & Security section's substantive claims (just word-level swaps)
  • Page layout, structure, or design system tokens (one styling change: 988 callout box)

Out of scope — needs app-team raise

The website now says what should be true. App-team needs to verify:

  • Does the app actually surface crisis resources when PHQ-9 ≥20 or GAD-7 ≥15? (If no → FTC §5 deceptive claim)
  • Does the app handle PHQ-9 item 9 ≥1 independently of total score? (Real safety gap: total-only thresholds miss self-harm ideation at lower totals per crisis agent)
  • Is "Crisis button always visible in app" literally true (no hidden in modals / onboarding)?
  • Is "Less than 3 seconds from any screen to 988" literally true?

Verification

  • `npm run lint` — clean
  • `npm test` — 74 tests pass
  • `npm run build` — clean, all routes generated
  • Chrome DevTools on local prod build:
    • "Auto-detects" / "Auto-triggered" / "triggered automatically" / "Integrated with crisis protocols" — ALL absent ✓
    • "Mental Health Self-Monitoring" / "Military-grade" / "healthcare provider" — ALL absent ✓
    • "Flags elevated scores (PHQ-9 ≥20)" / "(GAD-7 ≥15)" — present ✓
    • "988" + "741741" — both present in body ✓
    • 988 callout uses `bg-crisis-bg` not `bg-info` ✓
  • Compliance agent re-review post-rewrite: "fully compliant with the wellness-app framing required by regulatory-applicability.md" (after the healthcare-provider line fix)
  • Crisis agent re-review post-rewrite: "materially better than 'triggered automatically' — passes" (after the healthcare-provider + section title fixes)

🤖 Generated with Claude Code

The /features page made detection / auto-trigger / clinical claims
that compliance + crisis agents both flagged as inconsistent with
Being's consumer-wellness positioning per regulatory-applicability.md
§FDA. Apple/TestFlight reviewers may visit the live site; "Auto-detects
severe depression (PHQ-9 ≥20)" + "Crisis support triggered
automatically" is exactly the language FDA uses to define a Software
as a Medical Device.

Rewrites (19 + 2 follow-ups from agent re-review):

# Removed: SaMD-adjacent detection / trigger claims
- "Auto-detects severe depression (PHQ-9 ≥20)" →
    "Flags elevated scores (PHQ-9 ≥20) and surfaces crisis resources"
- "Auto-detects severe anxiety (GAD-7 ≥15)" → same for GAD-7
- "Crisis support triggered automatically" / "Integrated with crisis
  protocols" → "Always one tap from 988 and Crisis Text Line"
- "Auto-triggered on PHQ-9 ≥20 or GAD-7 ≥15" (Crisis Support section) →
    "Surfaced immediately when self-assessment scores are elevated"

# Shifted: clinical register → consumer wellness register
- Section title: "Mental Health Self-Monitoring" → "Mood & Wellbeing Tracking"
- "Standardized self-assessments" / "mental health patterns" →
    "Research-based reflection tools" / "mood and wellbeing patterns"
- Card headers: "PHQ-9 (Depression)" → "PHQ-9 Mood Self-Assessment"
  (same pattern for GAD-7)
- "monitoring depression symptoms" → "tracking mood patterns over time"
- "monitor anxiety symptoms" → "tracking anxious thought and feeling patterns"
- Privacy: "mental health data" → "wellbeing data" (consistency)
- "Military-grade encryption" → "AES-256 encryption" (drop empty-marketing
  phrase, keep concrete claim)
- Hero: "modern mental health science" → "modern wellbeing research"
- CTA: "evidence-based self-monitoring tools" → "research-based
  self-reflection tools"

# Safety additions
- Crisis Text Line added: previously the 988 callout said "One tap to
  connect" implying only the call mode. Now: "Call 988 or text HOME to
  741741" — both modes named explicitly.
- 988 callout restyled from solid bg-info (bright blue + white text) to
  bg-crisis-bg + crisis-text + crisis-border tokens (muted, on-brand,
  consistent with the design system's crisis token family — matches
  what the audit recommended for cross-site unification of 988
  treatment).
- Section title "24/7 Crisis Support" → "24/7 Crisis Resource Access"
  (Being surfaces links to 24/7 resources; doesn't itself provide
  support — precision per crisis-agent re-review).
- PHQ-9 description: dropped "scores remain comparable to those you
  might see from a healthcare provider" — both agents flagged this as
  a new SaMD-adjacent claim on the rewrite. Now: "self-reported scores
  stay consistent, letting you track your own patterns."

# Out of scope (raise with app team)
- Verify the app actually surfaces crisis resources at PHQ-9 ≥20 /
  GAD-7 ≥15 (else FTC §5 issue).
- Handle PHQ-9 item 9 ≥1 independently of total score (real product
  safety design concern: total-only thresholds miss self-harm
  ideation at lower totals).
- Verify "Crisis button always visible in app" + "Less than 3 seconds
  from any screen to 988" are literally true.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@MP2EZ MP2EZ merged commit 7814734 into preview May 26, 2026
2 checks passed
@MP2EZ MP2EZ deleted the fix/features-clinical-claims branch May 26, 2026 01:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant