Files
triqura-ecd/docs/sessions/2026-07-14-sessielog.md
colinislit 6419398060 docs: discussiestuk samenspel TIP-ECD, sessielog 14 juli en releasenote-screenshots
- docs/intent/samenspel-tip-ecd.html: laag-of-platform discussiestuk voor
  de werksessie over de TIP-koppeling (twee modellen, drie routes,
  API-mapping, beslisvragen)
- docs/sessions/2026-07-14-sessielog.md: besluiten, reviewbevindingen en
  uitgevoerde opschoning van vandaag

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 15:32:15 +02:00

5.5 KiB
Raw Blame History

Sessielog — 14 juli 2026

Deelnemers: Colin (PO) + Claude Code Onderwerp: TIP↔ECD-samenspel, module-reviews, opschoning codebase (fase 0 + 0b) Branch: swift-cortex


1. Besluiten

# Besluit Toelichting
1 ECD wordt opnieuw opgebouwd op een eigen datamodel Prototype leunt op Supabase + FHIR-conventies met structurele gebreken. Geen quick fixes; eerst strippen, dan van scratch opbouwen met goede logica en module-interacties.
2 Geen quick fixes op de gevonden bugs De reviewbevindingen (zie §3) zijn symptomen van het ontbrekende datamodel; structureel oplossen in de rebuild.
3 Kapotte intake-tabs en behandelplan-module verwijderd Anamnese/Onderzoeken/ROM konden nooit opslaan; behandelplan-AI negeerde diagnose en ernst. Beide komen terug bij de rebuild.
4 FHIR en Cortex blijven voorlopig staan /api/fhir/Patient is de facto de patiënten-API (dossier, agenda, Cortex). Vervangen is fase 3. Cortex-flows raken de TIP-koppeling — niet twee keer bouwen.
5 Instroom als eerste rebuild-module (voorstel, nog te bevestigen) Verwijzing → screening → intake is ook de TIP-proefflow; bewijst datamodel én TIP-samenspel in één beweging.

2. TIP↔ECD-verkenning

  • TIP-repo (../intent-platform/tip) verkend: Dossier → Workspace → Artifact → Information Elements → Intentregels → Intent → Scenario. Twee paden naar een intent: gestructureerd (regels over IE's) en ongestructureerd (POST /detect).
  • Kerninzicht: TIP is een platform waar je een systeem op aansluit (datafeed vereist), geen laag die je op een systeem legt. Dat wijkt af van het beeld waarmee het ECD is ontworpen — en van het Cortex-architectuurdocument v0.1, dat de intent-motor als in-app bibliotheek (lib/cortex/) beschrijft en TIP nog niet kent.
  • Drie routes uitgewerkt: (1) alleen /detect, (2) TIP als volledig procesbrein, (3) groeipad/detect + één gestructureerde flow (verwijsbrief → intake) als proef. Aanbeveling: route 3.
  • Open behoeftes die TIP nu niet dekt: streaming chat, entity resolution (hoort ECD-kant: vereist patiëntendata), RAG/kennisbank.
  • Discussiestuk voor de werksessie Colin & Joshua: docs/intent/samenspel-tip-ecd.html (ook als artifact gepubliceerd). Bevat de twee modellen, verwijsbrief-flow, drie routes, API-mapping en vijf beslisvragen.

3. Module-reviews (drie parallelle agents)

Intake — Anamnese, Onderzoeken en ROM functioneel volledig kapot: UI stuurt weergave-labels ("Psychiatrische anamnese") waar de database systeemcodes eist (psychiatrisch). Alle verwijderknoppen doen stil niets (DELETE RLS-policies ontbreken op alle intake-tabellen). Intake-header "Bewerken" is een lege placeholder. Kindcheck met default-antwoorden slaat leeg object op → voortgangsring blijft op "ontbreekt".

Diagnoses — Verwijderen is een no-op (zelfde RLS-oorzaak, live geverifieerd). Behandelplan-AI kreeg "DSM-categorie: primary-diagnosis" in de prompt i.p.v. de diagnose; ernst viel altijd terug op "middel". DSM-5-veld werd verzameld maar nooit opgeslagen. UI kent 4 van de 6 statussen. ICD-10 hardcoded (55 F-codes). Twee parallelle diagnosemodules op dezelfde tabel. conditions-tabel staat in geen enkele migration (schema niet reproduceerbaar).

Agenda — Drie schrijfpaden (EPD-modal, Cortex server actions, Cortex API-routes) met elk eigen conventies. Modal-afspraken verschuiven +2 uur per opslag (naïeve tijdstring → timestamptz). practitioner_id leeg → Cortex cancel/reschedule altijd 403. Cortex annuleer/verzet-flow doodlopend (parser levert string, UI verwacht object). Dagweergave filtert vanaf kloktijd i.p.v. middernacht. Patiëntzoeker case-sensitive op voornaam.

4. Uitgevoerd: opschoning (7 commits, 24.097 regels)

Van 394 naar 298 ts/tsx-bestanden. Build en lint groen na elke stap.

Commit Inhoud
10c994b Fase 0: marketing-site, blog, leads-API, _archive, sitemap; root → /login; robots op disallow-all
5e910c3 Dubbele diagnosemodule (patiëntniveau) weg
a8b02c1 Kapotte intake-tabs weg, incl. server actions, voortgangsring en Cortex-navigatiedoelen
96848ec Behandelplan-module weg (ook uit patiëntdashboard, dashboard-API, Cortex-dashboardblock)
38dd7c1 Placeholder-pagina's dashboard/reports weg; login-tests → /epd/agenda
caeba77 /epd/clients redirect-laag weg; alles landt op /epd/patients
b00bfa5 next-mdx-remote, gray-matter, laatste marketing-restanten weg

Sidebar toont nu alleen werkende modules: Cortex, Cliënten, Verpleegrapportage, Agenda.

Nog open uit de verificatie: e2e-suites en browser-smoke-check (vereisen draaiende dev-server). Commits zijn lokaal — nog niet gepusht.

5. Vervolgstappen

  1. Werksessie Colin & Joshua over het TIP↔ECD-samenspel — discussiestuk als agenda (vijf beslisvragen, o.a. platform-of-laag en eigenaarschap per gegeven).
  2. Ontwerpdocument rebuild: moduleset + flows + datamodel-voorstel (centrale waardelijsten, herkomst-velden mens/AI, stabiele ID's, pgvector-klaar, Neo4j ontworpen-niet-aangezet). Review met Colin vóór er een migration wordt geschreven.
  3. Daarna: verse schema-baseline, lib/dat/, modules één voor één terugbouwen — instroom eerst.

Referenties

  • Discussiestuk: docs/intent/samenspel-tip-ecd.html
  • Platform-architectuur: ../../docs/knowledge/technische-architectuur.md (v0.1 — behoeft v0.2 met TIP-ADR)
  • Opruimplan (goedgekeurd): zes stappen fase 0b, uitgevoerd zoals hierboven