CareControl AI — User Stories
Extracted from: Nicolas & Dena transcript (27 May 2026) | Dena's report | Market landscape strategy | Sahlgrenska pitch deck
Cross-referenced against current build (v0.1 demo, live at life-atlas.github.io/carecontrol-ai)
Generated: 28 May 2026
Scoreboard: Current Build vs. Full Vision
Personas
| Persona | Real person | Description |
| Brukare | Fatimah | 84, Persian-speaking, hemtjanst 3x/day, no written schedule, lost control over her day |
| Anhorig | Dena | Fatimah's daughter, worked in hemtjanst herself, lives elsewhere, no contact number for hemtjanst |
| Kontaktperson | Parisa | Persian-speaking hemtjanst kontaktperson, holds all planning info, only person Fatimah can communicate with |
| Personal | (rotating) | 16 different staff in 14 days (national avg), no info about brukare before arriving |
| AI Agent | CareControl | Calls kontaktperson, extracts schedule, translates, briefs everyone — no hemtjanst IT integration needed |
Epic 1: Brukare Knows What's Happening Must-be
The core problem from the transcript: "Ingen har kontroll. Det bara hander. Det bara kommer folk. Det bara kommer folk och oppnar dorren." — Dena
TodayView shows next visit with time, staff name, and tasks. Large font, Persian greeting, RTL support.
Transcript 00:00: "Hon vet inte vad som hander. Hon har inte kontroll." | Transcript 01:27: "padda, iPad eller vad som helst"
Persian greeting works. But schedule content (task names, staff names, notes) is still in Swedish. Needs full content translation.
Transcript 04:48: "Din mamma kan prata pa persiska. AI:n tolkar direkt." | Dena report: "rostassistent" + "tydligt sprak"
Staff name is shown. Photo is missing — only a generic person icon. Transcript explicitly mentions photo: "har du nagon bild pa vem du nu ar som kommer?"
Transcript 14:06: "har du nagon bild pa vem du nu ar som kommer?" | Transcript 10:49: "en morkhyad kille som var ledig" — stranger arriving caused distress
Delay status badge exists on schedule cards (yellow "Forsenad"). But there's no push notification, no audio alert, no "Sara ar 10 min sen, hon ar pa vag" message.
Transcript 00:00: "Parisa, hon kommer vara forsenad. Eller 40 minuter forsenad. Da far mamma en notis." | Dena report: "Sara ar ungefar tio minuter sen. Hon ar pa vag."
No text-to-speech. The transcript vision is an AI agent that calls Fatimah: "den ringa till mamma. Pa persiska. Hej Fatima, jag precis pratat med Parisa. Det har kommer handa."
Transcript 12:12: "kan den ringa till mamma. Pa persiska." | Dena report: "mojlighet att fa information upplast" + "rostassistent"
No wish/request feature. Transcript: "Jag vill ha hjalp att duscha. Jag vill ga ner pa stan." The brukare should be able to state preferences for the day.
Transcript 13:23: "Har ar det jag vill fa gjort idag." — Dena's validation moment | Dena report: "Kan jag onska dusch lite senare?"
No voice input, no NLP, no conversational interface. This is a core differentiator from Dena's report.
Dena report: "Brukaren kan fraga: Vem kommer idag? Nar kommer nasta besok? Vad ska jag fa hjalp med idag?"
OK and Hjalp buttons in TodayView. Oversized (py-6), accessible. But Hjalp button doesn't actually do anything yet — no alert is sent.
Design decision from build session
Epic 2: Anhorig Has Visibility Must-be
Dena's pain: "Jag har inte hennes nummer" (can't reach kontaktperson), "Nej jag far inte" (doesn't receive the weekly plan).
Dashboard shows today's visits with time, staff name, tasks, and status. Stats row: total/completed/remaining.
WeekView "Veckan som gatt" tab shows 7-day history with mood emojis, staff notes, status badges, unique staff count.
WeekView "Kommande" tab shows 2 days of upcoming visits.
No push notifications. No PWA service worker. Market landscape: "Family app showing today's schedule + push notifications when someone arrives."
Market landscape 8.4: "Family app (Dena) showing today's schedule + push notifications when someone arrives"
Profile page shows full care passport with all fields.
Profile is read-only. No edit capability. Data comes from mock data or Supabase — no form to update it.
Transcript 11:35: "Life Atlas fragar lite fragor... De matar informationen de har basic sjalv."
No consent/sharing controls. Transcript: "Vad du valjer att den ska visa, fine. Det ar upp till dig." Currently all data is visible to anyone with the access code.
Transcript 03:49: "Det ar upp till dig om du inte vill visa medicinerna" | Transcript 14:49: "Om Parisa ringer sa far du dela med dig av den har informationen"
The transcript reveals Dena doesn't even have Parisa's phone number. CareControl should store the kontaktperson's contact and enable direct communication.
Transcript 11:17: "Jag har inte hennes nummer."
Epic 3: Staff Arrives Prepared Must-be
Nicolas's vision: "De har paddan dar. De loggar in. De trycker pa play, de har aldrig traffat Fatima innan. Och dar ser de da, men hon foddes har och gjorde de har grejerna."
StaffView has full numpad code entry. No auth required — code lookup against profiles table.
StaffView shows: name, birthplace, language flags, allergies (red warning), medications, life story, preferences.
Transcript 01:27: "de trycker pa play... dar ser de da, men hon foddes har och gjorde de har grejerna"
StaffView has interactive task checklist with green checkmarks, notes field, checkin/checkout buttons.
No AI summary. The Visit type has an ai_summary field but it's always null. Dena's report: "Nasta besok: Anna, 84 ar. Vid gardagens kvallsbesok var Anna orolig... Hon at lite daligt igar. Paminn om vatska. Observera fallrisk."
Dena report line 51: AI summary example with risk warnings + previous visit context
No translation capability. This is the "tolk" — the central metaphor of the entire product.
Transcript 03:05: "Det blir som en tolk. Det blir som din mammas tolk mot hemtjansten." | Market landscape 8.5: Performance feature v0.2-v0.4
Text notes exist in StaffView but no voice input, no AI documentation generation.
Dena report line 74: "personalen tala in en kort anteckning. AI-agenten skapar ett dokumentationsforslag"
Market landscape defines bidirectional feedback: worker rates conditions too, generating data for anti-minutstyrning arguments.
Market landscape 2D: Worker-side feedback on briefing quality, home safety, genomforandeplan quality, time adequacy
Epic 4: AI Agent — Schedule Extraction Must-be
The key architectural insight: "Det ar ingen integration som behovs med hemtjansten. Du bara ringer och far den har informationen." — Nicolas
This is the "Parisa pattern" — the product's zero-integration architecture. No API needed, just an AI that calls and asks.
Transcript 07:58: "En AI-agent som ringer varje morgon. Vem ar det som kommer idag? Mamma behover ju inte gora nagonting."
"Hej Fatima, jag precis pratat med Parisa. Det har kommer handa..." — delivered in Persian via phone call.
Transcript 12:12: "kan den ringa till mamma. Pa persiska."
Onboarding page exists but doesn't collect kontaktperson info. Nicolas: "Du bara svarar pa fem fragor. Life Atlas fixar ju resten sen."
Transcript 11:35: "Vilken handledare har du? Okej, vad ar det for telefonnummer? Ja, Life Atlas fixar allting."
Schedule page exists with basic add functionality, but it's bare — no import from planning doc, no recurring schedules.
Transcript 05:12: "Jag kan hamta planeringen. Du lagger planeringen som din dator. Och sen bygger du pa grund av den har planeringen."
Epic 5: Visit Rating System Exciter
The Glassdoor-for-hemtjanst layer. Not the core value (that's schedule visibility) but the viral mechanic that drives adoption. Provider-level public only, never name individual workers publicly.
Mood emoji rating exists in StaffView (staff rates on behalf), but not in brukare's TodayView. Should be 3 dimensions per Market landscape, not just mood.
Market landscape 2A: Three dimensions: trygg? forstod ni varandra? fick du hjalp?
No favorit/avoid mechanism. This is private feedback to the utforare, not public.
Market landscape 2A: "One-tap favorit" + "One-tap vill inte traffa igen"
No voice recording capability. Market landscape specifies AI transcription + translation + sentiment tagging.
Market landscape 2A: "Optional voice note in any language... AI transcribes, translates, tags sentiment + topic"
Glassdoor mechanic: aggregate score, continuity metric, reliability, communication quality, language badges, right of reply.
Market landscape 2C + Legal section: Provider-level only, >=7 threshold, never name individuals
"Min mammas hemtjanst har 4.2 — kolla din!" Deep-link cards + monthly kommun ranking shift.
Market landscape 3: Viral mechanic modeled on Glassdoor launch
Epic 6: Continuity & Pattern Detection Performance
ML-driven insights from Dena's report: eating patterns, fall risk, repeated questions, scheduling patterns.
WeekView shows unique staff count for 7 days. But no 14-day window, no benchmark comparison, no trend line.
Market landscape 2B: "continuity score (faces per 14 days)" | Socialstyrelsen mått due Dec 2026
No pattern detection. Dena's report: "Anna har atit mindre an vanligt tre dagar i rad. Folj upp maltid och vatska."
Dena report line 70: Predictive analysis example
"Besok hos denna brukare tar ofta 15 minuter langre pa duschdagar." — ML on visit duration data.
Dena report line 65: ML scheduling pattern example
WeekView has basic stats but no trends, no graphs, no actionable insights over time.
Epic 7: Life Atlas Integration Must-be
"Allting ar Life Atlas i bakgrunden. Life Atlas samlar fran hennes smarta armband. Den har hela hennes historik." — Nicolas
Data model exists (Profile type with medications, allergies, life_story, preferences). But stored in CareControl's own tables, not integrated with Life Atlas.
Transcript 12:12: "allting ar Life Atlas i bakgrunden... All medicin, allting!"
No granular consent. Nicolas: "mamma har sagt, om Parisa ringer sa far du dela med dig av den har informationen."
Transcript 14:49: Consent-based sharing model
Epic 8: Accessibility & Elderly UX Must-be
Dena's report: "roststyrning, tydligt sprak, stora knappar och mojlighet att fa information upplast"
brukare-mode CSS class applies large fonts. Touch targets are py-6 (56px+). Dark theme with high contrast.
dir="rtl" applied on Persian greeting. Language detection in TodayView.
No Web Speech API, no voice navigation. Critical for elderly with limited mobility or vision.
Dena report: "roststyrning" listed as key accessibility feature
Greetings exist for all 10 languages. But UI chrome (button labels, nav items, section headers) is Swedish only.
Epic 9: Emergency & Safety Performance
Profile page has medications + allergies. But no dedicated emergency mode, no lock-screen card, no "show this to paramedics" view. Dena specifically flagged this use case.
Transcript 04:07: "Det har kommer vara nar ambulansen kommer och hon ar sjuk. Da kan det har vara viktigt."
Hjalp button exists in TodayView but is non-functional — no alert routing.
Epic 10: B2G / Kommun Dashboard Exciter
Market landscape 7: B2G tier at 5-20 kr / brukare / month
Market landscape 7: B2B tier at 25-50 kr / brukare / month
Market landscape 5: 1 July 2026 sprakkrav, Socialstyrelsen matt due Dec 2026
Epic 11: Voice Clone & Personalization Exciter
Transcript 09:30: "du kan klona hennes rost" | Market landscape caveat: requires explicit voice-consent capture
Dena report line 140: Personcentrerad omsorg — AI learns individual patterns
Epic 12: Multi-language Live Translation Performance
The "tolk" metaphor. Staff speaks Swedish, Fatimah hears Persian. Fatimah speaks Persian, staff hears Swedish.
Transcript 04:48: "Det kan ju vara en tolk... Din mamma kan prata pa persiska. AI:n tolkar direkt."
Market landscape 8.6: Performance feature v0.2-v0.4
Priority Matrix: What to Build Next
| # | Story | Priority | Effort | Why now |
| CC-002 | Full content translation (tasks, notes in Persian) | P0 | S | Core promise — "tolk" — only greeting is translated |
| CC-003 | Staff photos | P0 | S | Strangers at the door caused real distress |
| CC-004 | Delay notifications (in-app + audio) | P0 | M | Dena's #1 pain: 40-min delay with no info |
| CC-005 | Text-to-speech for daily plan | P0 | M | Fatimah can't read — TTS is essential, not nice-to-have |
| CC-006 | Brukare wishes ("vad vill jag ha hjalp med idag") | P1 | M | Dena's validation moment: "Det ar den har jag behover" |
| CC-012 | Push notifications for Dena | P1 | M | Anhorig needs real-time awareness, not manual checking |
| CC-014 | Editable care passport | P1 | M | Currently read-only mock data — useless for real pilot |
| CC-020 | AI visit briefing for staff | P1 | L | Differentiator vs. blank genomforandeplan |
| CC-026 | Onboarding: collect kontaktperson info | P1 | S | Required for the Parisa-pattern to work |
| CC-027 | Manual schedule entry (recurring, from planning doc) | P1 | M | Without this, demo uses only mock data |
| CC-044 | Hjalp button sends real alert | P1 | S | Button exists but does nothing — broken promise |
| CC-024 | AI agent calls kontaktperson | P2 | XL | The zero-integration architecture — needs voice AI infra |
| CC-028 | 3-dimension rating on brukare side | P2 | M | Exciter — viral mechanic, but not must-be |
| CC-043 | Emergency info card | P2 | S | Dena flagged ambulance use case explicitly |
Effort key: S = small (1-2 hrs), M = medium (half day), L = large (1-2 days), XL = extra large (1+ week, needs infra)
Sources: Transcript = Nicolas & Dena conversation 27 May 2026 | Dena report = CareControl AI course paper | Market landscape = Product strategy document | Build = Current v0.1 demo code