Files
triqura-ecd/docs/intent/prd-cortex-v2.md
colinislit 26ed58b7ff docs(cortex): add PRD, TO and rename swift → cortex
New documents:
- prd-cortex-v2.md: Product Requirements Document with MVP scope,
  user flows, success criteria, and roadmap
- to-cortex-v2.md: Technical Design with three-layer architecture,
  API design, error handling, and logging

Renamed files (swift → cortex):
- architecture-swift-cortex-v2.md → architecture-cortex-v2.md
- fo-swift-intent-system-v2.md → fo-cortex-intent-system-v2.md
- haalbaarheidsanalyse-swift-cortex-v2.md → haalbaarheidsanalyse-cortex-v2.md
- review-swift-cortex-v2.md → review-cortex-v2.md

Updated content:
- All swift references replaced with cortex
- FO: confidence threshold 0.9 → 0.7 (industry standard)
- TO v1.1: Added error handling, input sanitization, improved
  suïcidaliteit regex, model version note
- Legacy docs: Added note about swift → cortex rename

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-30 10:22:22 +01:00

13 KiB
Raw Permalink Blame History

Product Requirements Document (PRD) Cortex V2

Projectnaam: Cortex Intent System V2 Versie: v1.0 Datum: 30-12-2025 Auteur: Colin Lit (Antigravity AI)


1. Doelstelling

Waarom bouwen we dit?

Het huidige Cortex systeem (V1) is reactief: de gebruiker geeft een commando, het systeem voert uit. Hoewel dit snel werkt (<100ms), mist het de intelligentie die zorgprofessionals nodig hebben. V2 transformeert Cortex van een "spraakgestuurd toetsenbord" naar een AI Collega.

Beoogd resultaat:

Een werkend prototype dat de kernwaarde van "Agency" demonstreert: het systeem begrijpt meerdere intenties in één zin, is context-aware (snapt wie "hij" is en wat "morgen" betekent), en geeft proactieve suggesties op basis van medische logica.

Type release: MVP / Public Prototype ("Build in Public")

Kernprincipe:

"We stoppen met optimaliseren voor milliseconden en starten met optimaliseren voor intelligentie."


2. Doelgroep

Primaire gebruikers

Rol Behoeften Pijnpunten V1
Verpleegkundige Snelheid, handen-vrij werken, administratieve lastenverlichting "Ik moet drie losse commando's geven voor één situatie"
Psycholoog Nuance, cliënt-context, emotionele lading "Het systeem snapt niet dat 'uitzichtloos' een alarmsignaal is"
Psychiater/Regiebehandelaar Veiligheid, medicatie-checks, overzicht "Ik wil dat het systeem meedenkt over labwaardes en interacties"

Stakeholders

  • Product Owner: Waarde aantonen, haalbaarheid bewaken
  • Developers: Technische implementatie, AI-integratie
  • UX Designer: "Invisible Interface" - minder frictie, meer begrip

Gebruikersquote (uit UX simulatie)

Regiebehandelaar: "'Ontlasten' betekent dat ik mijn intentie uitspreek, niet mijn administratie. Mijn intentie is 'Zorg voor Jan regelen'. De administratie (agenda, brief, notitie) is jullie probleem."


3. Kernfunctionaliteiten (MVP-scope)

3.1 The Three-Layer Cortex Model

Layer Functie Latency Voorbeeld
Layer 1: Reflex Arc Lokale regex voor simpele commando's <20ms "Agenda vandaag", "Zoek Jan"
Layer 2: Intent Orchestrator AI-classificatie voor complexe/multi-intent zinnen ~400ms "Zeg Jan af en maak notitie: grieperig"
Layer 3: Nudge Engine Proactieve suggesties na acties async "Wondcontrole inplannen over 3 dagen?"

3.2 MVP Features

  1. Hybrid Architecture

    • Naadloze switch tussen Reflex (lokaal) en Orchestrator (AI)
    • Confidence threshold: >= 0.7 voor lokale afhandeling
    • Ambiguity detection: escaleer bij top-2 score delta < 0.1
  2. Multi-Intent Support

    • Herkenning van signaalwoorden: "en", "daarna", "ook", "eerst"
    • Opsplitsen in Action Chain met sequentiële uitvoering
    • UI: Stacked Cards met progressie-indicatie
  3. Context Awareness

    • Pronoun resolution: "hij/zij" → actieve patiënt
    • Relatieve tijd: "morgen", "volgende week" → concrete datum
    • Context injection: ActivePatient, CurrentView, AgendaToday, RecentIntents
  4. UI Feedback

    • Processing indicator bij AI-acties
    • ActionChainCard voor meerdere acties
    • ClarificationCard bij ambigue input
  5. Basic Nudge (Proof of Concept)

    • Hardcoded protocol: Wondzorg → Wondcontrole suggestie
    • NudgeToast met accept/dismiss en countdown timer

3.3 Ondersteunde Intents

Intent Beschrijving Layer
dagnotitie Notitie/rapportage maken Reflex + Orchestrator
zoeken Patiënt zoeken Reflex
agenda_query Agenda bekijken Reflex
overdracht Dienst overdracht Reflex
create_appointment Afspraak maken Orchestrator
cancel_appointment Afspraak annuleren Orchestrator
reschedule_appointment Afspraak verzetten Orchestrator

4. Gebruikersflows (MVP-flows)

Flow 1: Multi-Intent Commando

Gebruiker: "Zeg Jan af voor vandaag en maak notitie: hij heeft griep"
    │
    ▼
┌─────────────────────────────────────────────────────┐
│ Layer 1 (Reflex): Detecteert "en" → Escaleer        │
└─────────────────────────────────────────────────────┘
    │
    ▼
┌─────────────────────────────────────────────────────┐
│ Layer 2 (Orchestrator): Parse naar 2 acties         │
│ 1. cancel_appointment (Jan, vandaag)                │
│ 2. dagnotitie (Jan, "hij heeft griep")              │
└─────────────────────────────────────────────────────┘
    │
    ▼
┌─────────────────────────────────────────────────────┐
│ UI: ActionChainCard                                 │
│ ┌─────────────────────────────────────┐             │
│ │ ✅ 1. Afspraak Jan geannuleerd      │             │
│ ├─────────────────────────────────────┤             │
│ │ ⏳ 2. Notitie: "hij heeft griep"    │             │
│ └─────────────────────────────────────┘             │
└─────────────────────────────────────────────────────┘

Flow 2: Context-Aware Pronoun Resolution

Context: Patiënt "Marie de Vries" is geopend in dossier

Gebruiker: "Maak notitie voor haar: medicatie ingenomen"
    │
    ▼
┌─────────────────────────────────────────────────────┐
│ Layer 2: Resolves "haar" → Marie de Vries           │
│ patientResolution: "pronoun"                        │
└─────────────────────────────────────────────────────┘
    │
    ▼
Notitie aangemaakt voor Marie de Vries

Flow 3: Proactieve Suggestie (Nudge)

Gebruiker: "Notitie: wond verzorgd, ziet er goed uit"
    │
    ▼
┌─────────────────────────────────────────────────────┐
│ Notitie opgeslagen ✅                                │
└─────────────────────────────────────────────────────┘
    │
    ▼
┌─────────────────────────────────────────────────────┐
│ Layer 3 (Nudge): Protocol "wondzorg-controle" match │
└─────────────────────────────────────────────────────┘
    │
    ▼
┌─────────────────────────────────────────────────────┐
│ NudgeToast (bottom-right)                           │
│ 💡 "Wondcontrole inplannen over 3 dagen?"           │
│ [Ja, doe maar] [Nee, bedankt]                       │
└─────────────────────────────────────────────────────┘

Flow 4: Simpel Commando (Reflex)

Gebruiker: "Agenda vandaag"
    │
    ▼
┌─────────────────────────────────────────────────────┐
│ Layer 1 (Reflex): Match "agenda" pattern            │
│ Confidence: 1.0 → Direct uitvoeren                  │
│ Latency: <20ms                                      │
└─────────────────────────────────────────────────────┘
    │
    ▼
Agenda artifact opent direct (geen spinner)

5. Niet in Scope

De volgende features vallen bewust buiten de MVP:

Feature Reden Post-MVP?
Complete medische protocollen Te complex voor prototype Ja, rule-engine
Rollback/Undo Vereist transactie-systeem Ja
Offline mode Prototype veronderstelt internet Nee (low priority)
Advanced error handling Retry-mechanismes, circuit breakers Ja
Analytics & learning Telemetry opslag, model training Ja
Productie-beveiliging NEN7510 compliance, audit logs Ja (kritiek voor productie)
Externe integraties Teams, ECD-koppelingen Ja
Adaptive confidence User-specific thresholds Nice-to-have
Sentiment analysis Emotionele lading detectie Nice-to-have

6. Succescriteria

Functionele criteria

Criterium Target Meetmethode
Multi-intent herkenning "X en Y" zinnen correct gesplitst Test dataset (50+ zinnen)
Pronoun resolution "hij/zij/hem/haar" correct resolved Test met actieve patiënt context
Reflex hit rate >70% lokaal afgehandeld Logging metrics
AI latency p95 <800ms Performance monitoring
Nudge trigger Wondzorg → suggestie getoond Manual test

UX criteria

Criterium Target
Geen "Ik begrijp het niet" Altijd een poging tot begrip, eventueel met clarification
Processing feedback Spinner bij AI-acties, geen "bevroren" scherm
Demo duur Volledige flow demonstreerbaar in ≤5 minuten

Technische criteria

Criterium Target
Reflex latency <20ms
AI fallback werkt Bij Anthropic 503 → graceful degradation naar Reflex
Geen PII in logs Input gesanitized voor productie logging

7. Risico's & Mitigatie

Risico Impact Kans Mitigatie
AI output inconsistent Hoog Middel Strikte JSON schema, temperature=0, fallback to unknown
Multi-intent parsing faalt Hoog Laag Uitgebreide test dataset, fallback naar single intent
Scope creep Middel Hoog Strikte MVP scope, 6 user stories max
Privacy breach (logs) Hoog Laag Input sanitization, geen PII in production logs
Anthropic API down Middel Laag Graceful degradation naar Reflex-only mode
Performance degradatie Middel Laag Caching, monitoring, threshold tuning
False positive Nudge Laag Middel Specifieke regex, word boundaries, test edge cases

8. Roadmap / Vervolg (Post-MVP)

Fase 1: MVP (Nu)

  • Hybrid architecture (Reflex + Orchestrator)
  • Multi-intent support
  • Context awareness
  • Basic Nudge (wondzorg)

Fase 2: Enhanced Nudge (Post-MVP)

  • Meerdere protocol rules (medicatie, crisis)
  • Admin UI voor rule management
  • NLP/AI voor complexere matching

Fase 3: Productie-ready

  • NEN7510 compliance
  • Audit logging
  • Advanced error handling (retry, circuit breaker)
  • Rollback support

Fase 4: Intelligence

  • Adaptive confidence (user-specific thresholds)
  • Sentiment analysis
  • Learning from corrections
  • Predictive suggestions

Fase 5: Integraties

  • ECD-koppelingen (PinkRoccade, Nedap)
  • Teams/Slack integratie
  • Voice-first mobile app

9. Bijlagen & Referenties

Gerelateerde documenten

Document Locatie Beschrijving
FO Cortex V2 docs/intent/fo-cortex-intent-system-v2.md Functioneel ontwerp
TO Cortex V2 docs/intent/to-cortex-v2.md Technisch ontwerp
Architectuur V2 docs/intent/architecture-cortex-v2.md Uitgebreid architectuurplan
Haalbaarheidsanalyse docs/intent/haalbaarheidsanalyse-cortex-v2.md Gap analyse en effort schatting
MVP User Stories docs/intent/mvp-userstories-intent-system.md User stories en acceptatiecriteria
UX Evaluatie docs/intent/ux-evaluation-intent-scalability.md UX perspectief op architectuur
UX Simulatie docs/intent/ux-simulation-intent-next-level.md Brainstorm "Next Level" features

Tech stack

  • Frontend: Next.js 15, React, TailwindCSS, shadcn/ui
  • State: Zustand
  • Backend: Next.js API Routes
  • Database: Supabase (PostgreSQL)
  • AI: Claude 3.5 Haiku (Anthropic)

Versie historie

Versie Datum Auteur Wijzigingen
1.0 30-12-2025 Colin Lit Initieel document