Skip to content

Feature/wellness checkin#26

Open
kanikaa-3018 wants to merge 11 commits into
mainfrom
feature/wellness-checkin
Open

Feature/wellness checkin#26
kanikaa-3018 wants to merge 11 commits into
mainfrom
feature/wellness-checkin

Conversation

@kanikaa-3018

Copy link
Copy Markdown
Collaborator

Key Implementations

  • Interactive Wellness index card: A compact dashboard widget summarizing the student's safety limits, stress scores, and observation check-ins.
  • Animated Breathing Visualizer: An iOS-Relax style breathing module designed to help students reduce stress, featuring smooth breathing-cycle guidance.
  • Wellness check-in drawer: A floating Sheet layout prompting users to log check-ins, record study/meal logs, and set automated wellness safety limits.
  • Backend wellness services: API routes (/api/wellness) integrating database cascades, auto-nudge notification checks, and stress analytics.
  • Hardening: Accompanying account-deletion cascades, counseling accordion dropdown layouts, and fallback grounding checks.

…n 7.7)

- Replace dense 270-line inline card with compact score/weather/mood view
- Add WellnessWeatherIcon SVG (sun/cloud/storm) driven by wellness.status
- Add WellnessSheet bottom drawer: AI coach, driver attribution bar,
  signal progress bars, gamified Today's Focus, reset actions, mood
  check-in with contextual AI response, Care Plan CTA
- Support resources moved to collapsible 'Talk to Someone' section inside
  sheet; phone numbers hidden behind a 'Call' button (not shown inline)
- Mood pick now sets contextual in-card moodResponse message; 'stretched'
  auto-opens the sheet
- Add state: wellnessSheetOpen, moodResponse, todayFocusDone
- No backend changes needed (all data already in API response)
- Replace static single-circle with an immersive gradient panel (blue-green,
  matching the iOS Relax widget)
- Inhale phase: circle smoothly scales up (3.9s cubic-bezier) with a
  vertical centre line visible as the circle grows
- Hold phase: two counter-rotating ellipses animate over the large circle
  (the intersecting-ellipse effect from the iOS screenshot)
- Exhale phase: circle smoothly contracts back (3.9s)
- Relax pre-start: 1.8s delay with 'Relax' label before first inhale
- Phase label top-left, cycle counter top-right (matches iOS widget layout)
- Countdown seconds shown below centre text
- CSS keyframes injected inline (no global CSS change needed)
@nishantharkut

Copy link
Copy Markdown
Owner

Requesting changes before merge.

Wellness is important because the original problem statement explicitly includes emotional well-being, burnout patterns, meals, sleep, and routines. But
this PR currently expands PocketBuddy into a broad wellness app. That risks bloating the product and distracting from the core: money behavior -> student
routine signals -> small corrective nudges.

What should stay:

  • Deterministic wellness signals tied to actual PocketBuddy data:
    • food gaps
    • late-night transaction activity
    • exam window
    • runway pressure
    • spending velocity
  • A lightweight check-in/nudge.
  • Bedrock-generated supportive text only if grounded in those deterministic signals.

Blockers:

  1. Do not infer “social withdrawal” from cart pool inactivity.
    Not joining a cart pool for 7 days is not enough to imply social isolation. Please rename this to something neutral like “shared-order activity” or
    remove it from the score.

  2. Avoid clinical or quasi-clinical framing.
    “Pattern suggests high stress” is acceptable only if the UI makes clear this is a spending/routine signal, not diagnosis. Avoid words or presentation
    that imply mental-health detection from financial logs.

  3. Remove aura/emoji/therapy-style language.
    Labels like “Balanced Aura” and soothing emoji quotes make the product feel less serious. Use clear product language:

    • “Stable routine”
    • “Needs attention”
    • “Reset suggested”
  4. Keep wellness connected to finance, not as a standalone module.
    Guided breathing, care-plan dialogs, and counseling accordions are too much for the current product surface. If kept, they should be behind a small
    “Support resources” drawer, not a major dashboard module.

  5. Check-in notes are sensitive data.
    Free-text stress notes are stored in checkin_logs. That needs explicit privacy handling:

    • user-visible retention policy
    • delete-account coverage
    • no cross-user aggregation
    • avoid showing this in demo unless necessary.
  6. Make meal language inclusive.
    Current copy assumes mess/canteen. Day scholars, PG students, and students cooking for themselves may not have mess access. Use “meal” language
    instead:

    • “Have a proper meal”
    • “Mess, home food, or a simple canteen plate works.”
  7. Do not make wellness prompts blocking.
    If there is a check-in dialog, it must be dismissible. The product should nudge, not lock the dashboard.

Recommended scope for merge:

  • Merge only the deterministic signal engine and a compact dashboard card.
  • Keep Bedrock message short and grounded.
  • Drop or defer breathing/care-plan/counseling UI until after the core demo is stable.

This should feel like “PocketBuddy notices money/routine stress early,” not “PocketBuddy is a therapy product.”

…nforce 30d retention, and move resources to drawer
@nishantharkut

Copy link
Copy Markdown
Owner

Thanks, this is much closer to the right direction. The deterministic backend signals are useful and aligned with the original problem statement.

I still do not want to merge this as-is because the UI surface is still too much like a standalone wellness product. PocketBuddy should frame this as
money/routine awareness, not therapy or clinical wellness.

Required changes before merge:

  1. Keep the deterministic signals:

    • meal gap
    • late-night activity signal
    • exam window
    • runway pressure
    • spend velocity
  2. Keep the compact dashboard nudge/check-in.

  3. Remove or hide from the main dashboard:

    • breathing exercise widget
    • soothing quote content
    • “AI Care Plan” framing
    • counseling/support accordion as a major UI surface
  4. Replace clinical or therapy-like wording:

    • avoid “stress points”, “care plan”, “wellness index” as the primary product language
    • prefer “routine check”, “meal gap”, “late-night activity”, “reset suggested”, “needs attention”
  5. Check-in must remain dismissible. The product should nudge, not block.

  6. Free-text check-in notes are sensitive. Keep 30-day retention and make sure delete-account coverage remains intact.

Recommended merge shape:

  • deterministic backend signal engine
  • compact dashboard routine/meal card
  • short grounded Bedrock message
  • dismissible check-in

Decision: not merge-ready in current UI shape, but close if reduced.

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.

2 participants