Files
triqura-ecd/docs/specs/ai-integratie/prd-ai-prefill-behandelplan-v1.md
colinislit 4775497dc7 feat: add docs chat widget UI components (E3)
- Add useDocsChat hook with message state, streaming, error handling
- Add ChatMessages component with auto-scroll and streaming cursor
- Add ChatInput component with Enter/Shift+Enter support
- Add DocsChatWidget floating container with amber styling
- Add AI integration specs (PRD, FO, bouwplan)

Implements Epic 3 of AI Documentatie Assistent feature.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 15:45:44 +01:00

12 KiB
Raw Blame History

📄 Product Requirements Document (PRD) — AI Pre-fill Behandelplan

Projectnaam: Mini-ECD AI Pre-fill Behandelplan
Versie: v1.0
Datum: 30-11-2025
Auteur: Colin Lit Status: Draft Ready for Review


1. Doelstelling

🎯 Doel van deze sectie: Beschrijf waarom dit product wordt gebouwd en wat het beoogde resultaat is.

📘 Toelichting: Een intelligent pre-fill systeem dat automatisch behandelplanconcepten genereert op basis van intake-notities en probleemprofielen. De focus ligt op het drastisch verminderen van administratieve last terwijl klinische kwaliteit behouden blijft.

Kernbelofte: Van 30+ minuten handmatig behandelplan schrijven naar <5 minuten review en publiceren.

Type: MVP Feature binnen Mini-ECD Prototype (Week 3-4 AI Speedrun)


2. Doelgroep

🎯 Doel: Schets wie de eindgebruikers en stakeholders zijn.

Primaire gebruikers

Rol Behoefte Pijnpunt nu
GGZ Behandelaar Snel bruikbaar behandelplan 30+ min typen per plan
Regiebehandelaar Review & accorderen Wachten op aanlevering

Secundaire stakeholders

  • Demo-bezoekers: Product owners/managers die AI-mogelijkheden willen zien
  • Developers: Technische professionals geïnteresseerd in AI-integratie patterns
  • Zorgverzekeraars: (toekomst) Compliance met zorgstandaarden

3. Kernfunctionaliteiten (MVP-scope)

🎯 Doel: Afbakenen van de minimale werkende functies.

3.1 Automatische Draft Generatie

Aspect Specificatie
Trigger Probleemprofiel opgeslagen → AI genereert draft
Input Intake-notities + DSM-categorie + Severity
Output Concept behandelplan (4 secties)
Timing On-demand bij navigatie naar Behandelplan tab

3.2 SMART Doelen Generatie

  1. AI extraheert concrete klachten uit intake-notities
  2. Genereert 2-4 SMART-doelen afgestemd op DSM-categorie en severity
  3. Elk doel bevat:
    • Specifiek gedrag/situatie
    • Meetbaar criterium (frequentie, intensiteit)
    • Acceptabel voor cliënt
    • Realistisch binnen behandelkader
    • Tijdgebonden (X weken)

Voorbeeld output:

"Cliënt ervaart maximaal 1 paniekaanval per week (nu: 3x/week) binnen 8 weken behandeling"

3.3 Evidence-based Interventie Mapping

DSM-Categorie Primaire Interventies Severity → Intensiteit
Angststoornissen CGT, Exposure, ACT Hoog → 12-16 sessies
Stemmingsklachten CGT, IPT, Gedragsactivatie Middel → 8-12 sessies
Trauma/PTSS EMDR, Narratieve therapie Hoog → 12+ sessies
Persoonlijkheid Schematherapie, MBT Hoog → 20+ sessies

3.4 Micro-AI Regeneratie

  • Per sectie/item een [↻ Regenereer] knop
  • Behandelaar kan specifieke onderdelen laten hergenereren
  • Behoudt context van overige secties
  • Optioneel: korte instructie meegeven ("maak concreter", "focus op werk")

3.5 (Stretch) ROM Score Integratie

  • Indien ROM-scores beschikbaar: meenemen in doelbepaling
  • Baseline scores automatisch toevoegen aan meetmomenten
  • Suggestie voor ROM-instrument bij evaluatiemomenten

4. Gebruikersflows (Demo- en MVP-flows)

🎯 Doel: Laten zien hoe de gebruiker stap-voor-stap door het systeem gaat.

Flow 1: Happy Path — Intake → Behandelplan

┌─────────────────────────────────────────────────────────────┐
│ 1. Behandelaar voltooit intake en slaat notities op        │
│    ↓                                                        │
│ 2. Klikt [AI  Analyseer intake]                           │
│    ↓                                                        │
│ 3. Probleemprofiel wordt gegenereerd (DSM + Severity)      │
│    ↓                                                        │
│ 4. Accepteert/bewerkt profiel → Slaat op                   │
│    ↓                                                        │
│ 5. Navigeert naar Behandelplan tab                         │
│    ↓                                                        │
│ 6. Ziet: "⚡ AI heeft een concept klaargezet"              │
│    ↓                                                        │
│ 7. Reviewt SMART-doelen, past aan indien nodig             │
│    ↓                                                        │
│ 8. Klikt [Accepteer & Publiceer] → Plan v1 actief          │
└─────────────────────────────────────────────────────────────┘

Doorlooptijd: < 3 minuten (vs. 30+ minuten traditioneel)

Flow 2: Regeneratie van specifiek onderdeel

  1. Behandelaar vindt Doel 2 niet passend
  2. Klikt [↻ Regenereer] bij Doel 2
  3. AI genereert alternatief doel met zelfde context
  4. Behandelaar selecteert nieuw voorstel of bewerkt handmatig

Flow 3: Handmatige start (geen AI)

  1. Behandelaar opent Behandelplan zonder probleemprofiel
  2. Ziet melding: "Geen concept beschikbaar. Vul eerst probleemprofiel in of start handmatig."
  3. Keuze: [Naar Probleemprofiel] of [Start leeg plan]

5. Niet in Scope

🎯 Doel: Duidelijk maken wat (nog) niet wordt gebouwd.

Feature Reden
Volledige DSM-5 classificatie Alleen DSM-light (6 categorieën) voor prototype
Multi-disciplinaire plannen (MDO) Complexiteit, geen meerwaarde voor demo
DBC/ZPM declaratie-koppeling Vereist externe integraties
Real-time collaboration Technisch complex, lage prioriteit
Volledige ROM-vragenlijst afname Alleen scores indien al beschikbaar
Productie audit logging Demo-only, geen compliance vereist
Meerdere AI providers Alleen Claude voor nu

6. Succescriteria

🎯 Doel: Objectieve meetlat voor een geslaagde oplevering.

Criterium Target Meetmethode
AI Response Time < 5 seconden Console timing
Draft Kwaliteit ≥ 80% bruikbaar zonder grote edits User feedback
Tijdsbesparing Van 30+ min → < 5 min Stopwatch demo
Demo Doorlooptijd Intake → Plan in < 3 min Live demo
Error Rate < 5% API failures Error logging
User Acceptance Min. 2 testers positief Feedback forms

7. Risico's & Mitigatie

🎯 Doel: Risico's vroeg signaleren en plannen hoe ermee om te gaan.

Risico Impact Mitigatie
AI output klinisch onbruikbaar 🔴 Hoog Prompts testen met GGZ-professionals; few-shot examples; "AI Concept" label
Hallucinaties in doelen/interventies 🟡 Middel Strikte JSON schema validatie; verplichte menselijke review
API rate limits / kosten 🟡 Middel Caching van drafts; prompt optimalisatie voor tokens
Trage response (>10s) 🟡 Middel Streaming response; skeleton loaders; timeout handling
Scope creep ("nog even dit erbij") 🟡 Middel Strikte PRD; "Post-MVP" parkeren
Privacy concerns demo-data 🟢 Laag Alleen fictieve cliëntdata gebruiken

8. Roadmap / Vervolg (Post-MVP)

🎯 Doel: Richting geven aan toekomstige uitbreidingen.

Fase 2: Enhanced AI (Q1 2026)

  1. Background Generation — Draft al genereren bij opslaan probleemprofiel
  2. Template Bibliotheek — Voorgedefinieerde templates per diagnose
  3. Prompt Tuning — A/B testen van verschillende prompt strategieën

Fase 3: Clinical Intelligence (Q2 2026)

  1. Sessie-over-Sessie Tracking — AI vergelijkt voortgang vs. doelen
  2. ROM Integratie — Automatische vragenlijst afname en scoring
  3. Risico Detectie — Flagging bij zorgwekkende patronen

Fase 4: Compliance & Scale (Q3 2026)

  1. Zorgstandaard Compliance — Check tegen GGZ richtlijnen
  2. Multi-provider Support — OpenAI/Gemini fallback
  3. Audit Trail — Volledige logging voor verantwoording

9. Bijlagen & Referenties

🎯 Doel: Bronnen koppelen voor context en consistentie.

Project Documentatie

  • PRD Mini-ECD v1.2 (prd-mini-ecd-v1_2.md)
  • Functioneel Ontwerp v2 (fo-mini-ecd-v2.md)
  • Technisch Ontwerp (to-mini-ecd-v1_2.md)
  • UX Stylesheet (ux-stylesheet.md)
  • Live Transcriptie FO (fo-live-transcriptie-v1.md)
  • FHIR GGZ Schema (20241121_fhir_ggz_schema.sql)

Externe Referenties


Appendix A: Technische Specificatie

A.1 Data Flow

┌──────────────────┐     ┌──────────────────┐     ┌──────────────────┐
│  Intake Notities │────▶│                  │────▶│  Behandelplan    │
│  (document_ref)  │     │   Claude API     │     │  Draft (JSONB)   │
├──────────────────┤     │                  │     ├──────────────────┤
│  Probleemprofiel │────▶│  /v1/messages    │     │  - doelen[]      │
│  (DSM + Severity)│     │                  │     │  - interventies[]│
└──────────────────┘     └──────────────────┘     │  - frequentie    │
                                                   │  - meetmomenten[]│
                                                   └──────────────────┘

A.2 API Endpoint

POST /api/ai/generate-behandelplan

Request:

{
  "clientId": "uuid",
  "intakeIds": ["uuid", "uuid"],
  "probleemProfiel": {
    "categorie": "Angststoornissen",
    "severity": "Hoog",
    "opmerkingen": "Paniekaanvallen 3x/week, vermijding openbare ruimtes"
  }
}

Response:

{
  "success": true,
  "draft": {
    "doelen": [
      {
        "id": "doel-1",
        "tekst": "Frequentie paniekaanvallen verminderen van 3x/week naar max 1x/week",
        "tijdslimiet": "8 weken",
        "meetbaar": "Dagboekregistratie"
      }
    ],
    "interventies": [
      {
        "id": "int-1",
        "naam": "Cognitieve Gedragstherapie (CGT)",
        "sessies": 12,
        "rationale": "Evidence-based voor paniekstoornis"
      }
    ],
    "frequentie": "Wekelijks, 50 minuten per sessie",
    "meetmomenten": [
      { "moment": "Baseline", "week": 0 },
      { "moment": "Tussentijds", "week": 4 },
      { "moment": "Tussentijds", "week": 8 },
      { "moment": "Afsluiting", "week": 12 }
    ]
  },
  "metadata": {
    "model": "claude-sonnet-4-20250514",
    "tokens_used": 1847,
    "generation_time_ms": 3200
  }
}

A.3 Claude Prompt Template (Conceptueel)

Je bent een ervaren GGZ-behandelaar die behandelplannen opstelt volgens 
de Nederlandse zorgstandaarden.

## Context
- Intake notities: {intakeContent}
- DSM-categorie: {categorie}
- Severity: {severity}
- Aanvullende opmerkingen: {opmerkingen}

## Opdracht
Genereer een behandelplan concept met:

1. **SMART Doelen** (2-4 stuks)
   - Specifiek, Meetbaar, Acceptabel, Realistisch, Tijdgebonden
   - Gebaseerd op de hoofdklachten uit de intake
   
2. **Interventies**
   - Evidence-based methoden passend bij de diagnose
   - Inclusief geschat aantal sessies
   
3. **Frequentie en Duur**
   - Behandelintensiteit afgestemd op severity
   
4. **Meetmomenten**
   - Evaluatieschema voor voortgangsbewaking

## Output Format
Antwoord ALLEEN met valid JSON volgens het schema.

Appendix B: UI States

Behandelplan Tab States

State Weergave Actie
Geen profiel "Vul eerst probleemprofiel in" [Naar Profiel]
Generating Skeleton loader + "AI genereert..." Wacht
Draft ready " AI Concept" badge + content Review/Edit
Error "Genereren mislukt" + retry [Probeer opnieuw]
Concept Oranje badge, bewerkbaar [Publiceer]
Gepubliceerd Groene badge, read-only [Nieuwe versie]

Document gegenereerd als onderdeel van AI Speedrun — Week 3