feat: initial commit

This commit is contained in:
Janpeter Visser 2026-04-18 14:18:26 +02:00
commit 7d443a004a
76 changed files with 15704 additions and 0 deletions

53
docs/README.md Normal file
View file

@ -0,0 +1,53 @@
# Inspannings Monitor Documentatieset
Deze map bevat de vernieuwde documentatie voor de gekozen `wellness/self-management` route van `Inspannings Monitor`, met een expliciet opengehouden pad naar een latere medische producttrack.
## Huidige leidende documenten
- [inspannings-monitor-01-productkader-en-positionering-v06.docx](./inspannings-monitor-01-productkader-en-positionering-v06.docx)
Legt intended use, non-intended use, scope, doelgroep en claim-guardrails vast.
- [inspannings-monitor-02-functionele-specificatie-mvp-v06.docx](./inspannings-monitor-02-functionele-specificatie-mvp-v06.docx)
Beschrijft de wellness-first MVP in toetsbare functionele requirements.
- [inspannings-monitor-03-privacy-security-safety-baseline-v02.docx](./inspannings-monitor-03-privacy-security-safety-baseline-v02.docx)
Bundelt de minimale randvoorwaarden voor privacy, informatiebeveiliging en productveiligheid.
- [inspannings-monitor-04-roadmap-wellness-naar-medisch-v02.docx](./inspannings-monitor-04-roadmap-wellness-naar-medisch-v02.docx)
Laat zien hoe het product gecontroleerd kan doorgroeien zonder ongemerkt medische scope binnen te trekken.
- [inspannings-monitor-05-technische-architectuur-en-implementatie-v01.docx](./inspannings-monitor-05-technische-architectuur-en-implementatie-v01.docx)
Brengt de technische implementatielaag uit de oude specificatie terug als apart architectuurdocument voor de wellness-first MVP.
- [inspannings-monitor-06-implementatieplan-en-backlog-v01.docx](./inspannings-monitor-06-implementatieplan-en-backlog-v01.docx)
Zet de documentatieset om naar een uitvoerbare backlog met epics, stories, afhankelijkheden en releasevolgorde.
## Bevestigde uitgangspunten
- Productnaam: `Inspannings Monitor`
- Positionering eerste release: `wellness/self-management`
- Release 1: alleen individuele gebruikers
- Doelgroep: `volwassenen`
- Voertaal eerste release: `Nederlands`
- Hosting: `Vercel`
- Database: `Supabase PostgreSQL`
- Authenticatie: `Supabase Auth`
## Generator
- [generate_inspannings_monitor_docs.py](./generate_inspannings_monitor_docs.py)
Genereert de actuele `.docx`-documenten opnieuw vanuit de bevestigde uitgangspunten.
## Backlog en Linear
- [backlog/inspannings-monitor-backlog.md](./backlog/inspannings-monitor-backlog.md)
- [backlog/inspannings-monitor-backlog.csv](./backlog/inspannings-monitor-backlog.csv)
- [backlog/inspannings-monitor-linear-setup.md](./backlog/inspannings-monitor-linear-setup.md)
- [backlog/inspannings-monitor-linear-import-checklist.md](./backlog/inspannings-monitor-linear-import-checklist.md)
- [backlog/inspannings-monitor-linear-projects.md](./backlog/inspannings-monitor-linear-projects.md)
- [backlog/inspannings-monitor-linear-eerste-30-minuten.md](./backlog/inspannings-monitor-linear-eerste-30-minuten.md)
- [backlog/generate_linear_backlog_assets.py](./backlog/generate_linear_backlog_assets.py)
## Oudere documenten
De eerdere `EnergyPace`-documenten in deze map zijn niet leidend meer. De `Inspannings Monitor`-documenten hierboven zijn de actuele basis.

View file

@ -0,0 +1,332 @@
import csv
from pathlib import Path
BASE_DIR = Path("/Users/janpetervisser/Development/third/docs/backlog")
SOURCE_CSV = BASE_DIR / "inspannings-monitor-backlog.csv"
LINEAR_CSV = BASE_DIR / "inspannings-monitor-linear-import-issues.csv"
PROJECTS_CSV = BASE_DIR / "inspannings-monitor-linear-projects.csv"
TEAM_NAME = "Inspannings Monitor"
INITIATIVE_NAME = "Release 1 MVP"
CREATED_AT = "2026-04-17T00:00:00Z"
LINEAR_HEADERS = [
"ID",
"Team",
"Title",
"Description",
"Status",
"Estimate",
"Priority",
"Project ID",
"Project",
"Creator",
"Assignee",
"Labels",
"Cycle Number",
"Cycle Name",
"Cycle Start",
"Cycle End",
"Created",
"Updated",
"Started",
"Triaged",
"Completed",
"Canceled",
"Archived",
"Due Date",
"Parent issue",
"Initiatives",
"Project Milestone ID",
"Project Milestone",
"SLA Status",
]
PRIORITY_MAP = {
"P0": "high",
"P1": "medium",
}
def read_rows():
with SOURCE_CSV.open(newline="", encoding="utf-8") as handle:
return list(csv.DictReader(handle))
def build_epic_map(rows):
return {
row["ID"]: row["Title"]
for row in rows
if row.get("Issue Type") == "Epic"
}
def normalize_labels(raw):
labels = [label.strip() for label in raw.split(";") if label.strip()]
return ", ".join(labels)
def build_description(row, epic_title):
parts = [
row["Description"].strip(),
"",
"## Context",
f"- Bron backlog-ID: `{row['ID']}`",
f"- Epic / project: `{epic_title}`",
f"- Fase: `{row['Phase']}`",
]
depends_on = row.get("Depends On", "").strip()
if depends_on:
parts.append(f"- Afhankelijk van: `{depends_on}`")
definition = row.get("Definition of Done", "").strip()
if definition:
parts.extend(
[
"",
"## Definition of done",
definition,
]
)
return "\n".join(parts).strip()
def build_linear_rows(rows):
epic_map = build_epic_map(rows)
linear_rows = []
for row in rows:
if row.get("Issue Type") != "Story":
continue
epic_id = row.get("Epic", "").strip()
epic_title = epic_map.get(epic_id, "")
labels = normalize_labels(row.get("Labels", ""))
linear_rows.append(
{
"ID": "",
"Team": TEAM_NAME,
"Title": row["Title"].strip(),
"Description": build_description(row, epic_title),
"Status": "Backlog",
"Estimate": "",
"Priority": PRIORITY_MAP.get(row.get("Priority", "").strip(), ""),
"Project ID": "",
"Project": epic_title,
"Creator": "",
"Assignee": "",
"Labels": labels,
"Cycle Number": "",
"Cycle Name": "",
"Cycle Start": "",
"Cycle End": "",
"Created": CREATED_AT,
"Updated": "",
"Started": "",
"Triaged": "",
"Completed": "",
"Canceled": "",
"Archived": "",
"Due Date": "",
"Parent issue": "",
"Initiatives": INITIATIVE_NAME,
"Project Milestone ID": "",
"Project Milestone": "",
"SLA Status": "",
}
)
return linear_rows
def write_linear_csv(rows):
with LINEAR_CSV.open("w", newline="", encoding="utf-8") as handle:
writer = csv.DictWriter(handle, fieldnames=LINEAR_HEADERS)
writer.writeheader()
writer.writerows(rows)
def write_projects_csv():
headers = [
"Name",
"Summary",
"Status",
"Milestones",
"Creator",
"Lead",
"Members",
"Created At",
"Started At",
"Target Date",
"Completed At",
"Canceled At",
"Teams",
"Initiatives",
]
rows = [
{
"Name": "Fundament",
"Summary": "Leg de technische basis voor release 1 met projectsetup, omgevingen, UI-basis en foutafhandeling.",
"Status": "Planned",
"Milestones": "",
"Creator": "",
"Lead": "",
"Members": "",
"Created At": CREATED_AT,
"Started At": "",
"Target Date": "",
"Completed At": "",
"Canceled At": "",
"Teams": TEAM_NAME,
"Initiatives": INITIATIVE_NAME,
},
{
"Name": "Auth en profiel",
"Summary": "Implementeer accounttoegang, profieldata, onboarding en basisinstellingen per gebruiker.",
"Status": "Planned",
"Milestones": "",
"Creator": "",
"Lead": "",
"Members": "",
"Created At": CREATED_AT,
"Started At": "",
"Target Date": "",
"Completed At": "",
"Canceled At": "",
"Teams": TEAM_NAME,
"Initiatives": INITIATIVE_NAME,
},
{
"Name": "Ochtendcheck-in",
"Summary": "Bouw de ochtendcheck-in met energiescore, slaapkwaliteit en automatische budgetafleiding.",
"Status": "Planned",
"Milestones": "",
"Creator": "",
"Lead": "",
"Members": "",
"Created At": CREATED_AT,
"Started At": "",
"Target Date": "",
"Completed At": "",
"Canceled At": "",
"Teams": TEAM_NAME,
"Initiatives": INITIATIVE_NAME,
},
{
"Name": "Dagplanning",
"Summary": "Maak plannen van activiteiten mogelijk met budgetfeedback, energie-impact en prioriteit.",
"Status": "Planned",
"Milestones": "",
"Creator": "",
"Lead": "",
"Members": "",
"Created At": CREATED_AT,
"Started At": "",
"Target Date": "",
"Completed At": "",
"Canceled At": "",
"Teams": TEAM_NAME,
"Initiatives": INITIATIVE_NAME,
},
{
"Name": "Evaluatie en dagoverzicht",
"Summary": "Maak evaluatie van activiteiten en een dagelijks overzicht van gepland versus uitgevoerd mogelijk.",
"Status": "Planned",
"Milestones": "",
"Creator": "",
"Lead": "",
"Members": "",
"Created At": CREATED_AT,
"Started At": "",
"Target Date": "",
"Completed At": "",
"Canceled At": "",
"Teams": TEAM_NAME,
"Initiatives": INITIATIVE_NAME,
},
{
"Name": "Weekoverzicht en inzichten",
"Summary": "Voeg weekterugblik, eenvoudige aggregaties en veilige patroonweergave toe zonder medische claims.",
"Status": "Backlog",
"Milestones": "",
"Creator": "",
"Lead": "",
"Members": "",
"Created At": CREATED_AT,
"Started At": "",
"Target Date": "",
"Completed At": "",
"Canceled At": "",
"Teams": TEAM_NAME,
"Initiatives": INITIATIVE_NAME,
},
{
"Name": "Reflectie en reminders",
"Summary": "Voeg optionele T+1/T+2 reflectieprompts en lichte reminderlogica toe voor zwaardere dagen.",
"Status": "Backlog",
"Milestones": "",
"Creator": "",
"Lead": "",
"Members": "",
"Created At": CREATED_AT,
"Started At": "",
"Target Date": "",
"Completed At": "",
"Canceled At": "",
"Teams": TEAM_NAME,
"Initiatives": INITIATIVE_NAME,
},
{
"Name": "Security en operations",
"Summary": "Borg logging, rate limiting, secrets, back-up en owner-only toegangscontrole voor echte gebruikersintroductie.",
"Status": "Planned",
"Milestones": "",
"Creator": "",
"Lead": "",
"Members": "",
"Created At": CREATED_AT,
"Started At": "",
"Target Date": "",
"Completed At": "",
"Canceled At": "",
"Teams": TEAM_NAME,
"Initiatives": INITIATIVE_NAME,
},
{
"Name": "Launch-readiness",
"Summary": "Rond QA, copy review, accessibility checks, DPIA-input en go-live checks voor release 1 af.",
"Status": "Backlog",
"Milestones": "",
"Creator": "",
"Lead": "",
"Members": "",
"Created At": CREATED_AT,
"Started At": "",
"Target Date": "",
"Completed At": "",
"Canceled At": "",
"Teams": TEAM_NAME,
"Initiatives": INITIATIVE_NAME,
},
]
with PROJECTS_CSV.open("w", newline="", encoding="utf-8") as handle:
writer = csv.DictWriter(handle, fieldnames=headers)
writer.writeheader()
writer.writerows(rows)
def main():
rows = read_rows()
linear_rows = build_linear_rows(rows)
write_linear_csv(linear_rows)
write_projects_csv()
print(LINEAR_CSV)
print(f"rows={len(linear_rows)}")
print(PROJECTS_CSV)
print("projects=9")
if __name__ == "__main__":
main()

View file

@ -0,0 +1,53 @@
"ID","Title","Description","Issue Type","Epic","Priority","Status","Phase","Labels","Depends On","Definition of Done"
"EPIC-01","Fundament","Projectbasis, omgevingen en design foundation neerzetten.","Epic","","P0","Todo","Release 1","release:r1;domain:platform","",""
"ST-001","Next.js projectbasis opzetten","Zet de projectbasis op met TypeScript en de gekozen stylingaanpak.","Story","EPIC-01","P0","Todo","Release 1","release:r1;epic:fundament;type:build","EPIC-01","Project start lokaal en in preview zonder handmatige workarounds."
"ST-002","Omgevingen definiëren","Richt development, preview en production technisch in.","Story","EPIC-01","P0","Todo","Release 1","release:r1;epic:fundament;type:ops","ST-001","Development, preview en production zijn technisch ingericht."
"ST-003","Component foundation neerzetten","Bouw herbruikbare basiscomponenten voor formulieren, kaarten, knoppen en meldingen.","Story","EPIC-01","P0","Todo","Release 1","release:r1;epic:fundament;type:ui","ST-001","Herbruikbare basiscomponenten zijn mobiel bruikbaar."
"ST-004","Foutafhandeling en lege staten ontwerpen","Ontwerp en implementeer lege staten en bruikbare foutfeedback.","Story","EPIC-01","P0","Todo","Release 1","release:r1;epic:fundament;type:ux","ST-001","Gebruiker krijgt bruikbare feedback bij lege of foutieve situaties."
"EPIC-02","Auth en profiel","Inloggen, sessies, profiel en basisinstellingen werkend maken.","Epic","","P0","Todo","Release 1","release:r1;domain:auth","EPIC-01",""
"ST-101","Supabase Auth integreren","Integreer Supabase Auth en de sessieflow in de app.","Story","EPIC-02","P0","Todo","Release 1","release:r1;epic:auth-profiel;type:build","EPIC-01","Gebruiker kan inloggen en beveiligde routes gebruiken."
"ST-102","Profile- en UserSettings-model implementeren","Implementeer profiel- en settingsmodellen per gebruiker.","Story","EPIC-02","P0","Todo","Release 1","release:r1;epic:auth-profiel;type:build","ST-101","Profiel en instellingen zijn per gebruiker beschikbaar."
"ST-103","Onboardingflow bouwen","Bouw een onboarding van maximaal drie schermen.","Story","EPIC-02","P0","Todo","Release 1","release:r1;epic:auth-profiel;type:ux","ST-101","Nieuwe gebruiker begrijpt schaal, positionering en basisinstellingen."
"ST-104","Settingsscherm bouwen","Bouw instellingen voor taal, timezone, reminders en zichtbaarheid van punten.","Story","EPIC-02","P0","Todo","Release 1","release:r1;epic:auth-profiel;type:build","ST-102","Taal, timezone, reminders en zichtbaarheid van punten zijn persistent."
"ST-105","RLS-basispolicies inrichten","Richt owner-only RLS-policies in voor profiel en instellingen.","Story","EPIC-02","P0","Todo","Release 1","release:r1;epic:auth-profiel;type:security","ST-101","Gebruiker kan uitsluitend eigen profiel en settings lezen of wijzigen."
"EPIC-03","Ochtendcheck-in","Energiescore, slaapkwaliteit en dagbudget implementeren.","Epic","","P0","Todo","Release 1","release:r1;domain:checkin","EPIC-02",""
"ST-201","EnergySlider en SleepQualityInput bouwen","Bouw de invoercomponenten voor energiescore en slaapkwaliteit.","Story","EPIC-03","P0","Todo","Release 1","release:r1;epic:ochtendcheckin;type:ui","EPIC-02","Check-in kan mobiel comfortabel worden ingevuld."
"ST-202","Server action voor createMorningCheckIn","Implementeer de server action voor het opslaan van de ochtendcheck-in.","Story","EPIC-03","P0","Todo","Release 1","release:r1;epic:ochtendcheckin;type:build","ST-201","Check-in wordt opgeslagen met juiste validatie."
"ST-203","Budgetlogica implementeren","Bouw mapping van score naar energy level en dagbudget.","Story","EPIC-03","P0","Todo","Release 1","release:r1;epic:ochtendcheckin;type:logic","ST-202","Score mapping en budgetberekening zijn consistent en testbaar."
"ST-204","Check-instatus op dashboard tonen","Toon direct score, niveau en budget op het dashboard.","Story","EPIC-03","P0","Todo","Release 1","release:r1;epic:ochtendcheckin;type:ui","ST-202","Gebruiker ziet direct score, niveau en budget."
"ST-205","Unit tests voor score- en budgetmapping","Voeg tests toe voor grenswaarden en budgetberekening.","Story","EPIC-03","P0","Todo","Release 1","release:r1;epic:ochtendcheckin;type:qa","ST-203","Belangrijkste grenswaarden zijn afgedekt."
"EPIC-04","Dagplanning","Activiteiten plannen en budgetfeedback tonen.","Epic","","P0","Todo","Release 1","release:r1;domain:planning","EPIC-03",""
"ST-301","Datamodel voor activiteiten implementeren","Implementeer tabellen en seed-data voor activiteiten, categorieen en skip-redenen.","Story","EPIC-04","P0","Todo","Release 1","release:r1;epic:dagplanning;type:build","EPIC-03","Migraties en seed-data voor categorieen en skip-redenen zijn aanwezig."
"ST-302","Planningformulier bouwen","Bouw het formulier voor naam, categorie, duur, impact en prioriteit.","Story","EPIC-04","P0","Todo","Release 1","release:r1;epic:dagplanning;type:ui","ST-301","Activiteit kan met naam, categorie, duur, impact en prioriteit worden aangemaakt."
"ST-303","Autocomplete op eerdere activiteiten toevoegen","Maak snelle herselectie van eerder gebruikte activiteiten mogelijk.","Story","EPIC-04","P0","Todo","Release 1","release:r1;epic:dagplanning;type:ux","ST-302","Veelgebruikte activiteiten zijn snel opnieuw te kiezen."
"ST-304","EnergyMeter en lopend totaal implementeren","Toon het lopende totaal ten opzichte van het dagbudget.","Story","EPIC-04","P0","Todo","Release 1","release:r1;epic:dagplanning;type:logic-ui","ST-302","Totaal update direct na elke wijziging."
"ST-305","Overschrijdingswaarschuwing toevoegen","Toon een niet-blokkerende waarschuwing bij budgetoverschrijding.","Story","EPIC-04","P0","Todo","Release 1","release:r1;epic:dagplanning;type:ux","ST-304","Gebruiker krijgt feedback maar behoudt regie."
"EPIC-05","Evaluatie en dagoverzicht","Activiteiten afronden en dagresultaat tonen.","Epic","","P0","Todo","Release 1","release:r1;domain:evaluatie","EPIC-04",""
"ST-401","Statusflows voor uitgevoerd, geskipt en aangepast bouwen","Implementeer de drie kernstatussen voor activiteiten.","Story","EPIC-05","P0","Todo","Release 1","release:r1;epic:evaluatie;type:build","EPIC-04","Alle drie de statussen worden correct opgeslagen."
"ST-402","Evaluatievelden toevoegen","Voeg contextuele velden toe voor werkelijke duur, fatigue en skip-reden.","Story","EPIC-05","P0","Todo","Release 1","release:r1;epic:evaluatie;type:ui","ST-401","Contextuele velden verschijnen passend per status."
"ST-403","Ongeplande activiteiten ondersteunen","Maak het mogelijk een ongeplande activiteit toe te voegen en mee te tellen.","Story","EPIC-05","P0","Todo","Release 1","release:r1;epic:evaluatie;type:build","ST-401","Ongeplande activiteit telt mee in werkelijke totalen."
"ST-404","Dagoverzicht bouwen","Bouw het overzicht met gepland versus uitgevoerd en statusverdeling.","Story","EPIC-05","P0","Todo","Release 1","release:r1;epic:evaluatie;type:ui","ST-401","Gepland versus uitgevoerd en statusverdeling zijn zichtbaar."
"ST-405","Dagaggregaties server-side implementeren","Bereken dagtotalen en samenvatting server-side.","Story","EPIC-05","P0","Todo","Release 1","release:r1;epic:evaluatie;type:logic","ST-404","Dagtotalen blijven consistent met individuele records."
"EPIC-06","Weekoverzicht en inzichten","Weekpatronen en veilige insightregels toevoegen.","Epic","","P1","Todo","Release 1","release:r1;domain:insights","EPIC-05",""
"ST-501","Weekoverzichtspagina bouwen","Bouw de pagina voor weekterugblik.","Story","EPIC-06","P1","Todo","Release 1","release:r1;epic:weekoverzicht;type:ui","EPIC-05","Gebruiker kan per week terugkijken."
"ST-502","Weekaggregaties bouwen","Bereken gemiddelde energie en budget-adherence per week.","Story","EPIC-06","P1","Todo","Release 1","release:r1;epic:weekoverzicht;type:logic","ST-501","Gemiddelde energie en budget-adherence zijn herleidbaar en testbaar."
"ST-503","Skip-patronen zichtbaar maken","Toon patronen rond skip-redenen en terugkerende activiteiten.","Story","EPIC-06","P1","Todo","Release 1","release:r1;epic:weekoverzicht;type:logic-ui","ST-502","Patronen worden alleen bij voldoende data getoond."
"ST-504","Insightregels met datadrempels definiëren","Leg guardrails vast voor het tonen van patronen.","Story","EPIC-06","P1","Todo","Release 1","release:r1;epic:weekoverzicht;type:safety-logic","ST-502","Geen patroonclaim zonder guardrails."
"ST-505","Insightcopy toetsen op niet-medische formulering","Controleer alle inzichtteksten op wellness-positionering.","Story","EPIC-06","P1","Todo","Release 1","release:r1;epic:weekoverzicht;type:content","ST-504","Alle teksten blijven binnen wellness-positionering."
"EPIC-07","Reflectie en reminders","Optionele T+1/T+2 follow-up mogelijk maken.","Epic","","P1","Todo","Release 1","release:r1;domain:reminders","EPIC-05",""
"ST-601","ReflectionCheckIn-model en flow implementeren","Implementeer model en basisflow voor reflectie na een zwaardere dag.","Story","EPIC-07","P1","Todo","Release 1","release:r1;epic:reflectie;type:build","EPIC-05","Reflecties kunnen aan eerdere dagen gekoppeld worden."
"ST-602","Joblogica voor T+1/T+2 prompts bouwen","Bepaal server-side welke gebruikers een reflectieprompt moeten zien.","Story","EPIC-07","P1","Todo","Release 1","release:r1;epic:reflectie;type:logic-ops","ST-601","Prompts worden niet dubbel of willekeurig aangemaakt."
"ST-603","Instellingsoptie voor reflectieprompts toevoegen","Maak opt-in beheerbaar vanuit instellingen.","Story","EPIC-07","P1","Todo","Release 1","release:r1;epic:reflectie;type:build","ST-104","Gebruiker beheert opt-in zelfstandig."
"ST-604","Korte reflectie-UI bouwen","Bouw een lichte, niet-medische reflectieprompt.","Story","EPIC-07","P1","Todo","Release 1","release:r1;epic:reflectie;type:ui","ST-602","Prompt voelt licht en niet medisch."
"EPIC-08","Security en operations","Logging, hardening, back-up en policy-tests.","Epic","","P0","Todo","Release 1","release:r1;domain:security-ops","EPIC-01,EPIC-02,EPIC-03,EPIC-04,EPIC-05,EPIC-06,EPIC-07",""
"ST-701","Rate limiting toevoegen","Bescherm kritieke auth- en mutatieroutes tegen misbruik.","Story","EPIC-08","P0","Todo","Release 1","release:r1;epic:security-ops;type:security","EPIC-02","Kritieke auth- en mutatieroutes zijn beschermd."
"ST-702","Logging voor fouten en kernmutaties inrichten","Log fouten, loginproblemen en belangrijke mutaties centraal.","Story","EPIC-08","P0","Todo","Release 1","release:r1;epic:security-ops;type:ops","EPIC-03,EPIC-04,EPIC-05","Kerngebeurtenissen zijn herleidbaar."
"ST-703","Back-up en herstelstrategie documenteren en testen","Werk het restore-pad uit en valideer het.","Story","EPIC-08","P0","Todo","Release 1","release:r1;epic:security-ops;type:ops","EPIC-01","Restore-pad is aantoonbaar gevalideerd."
"ST-704","Secrets- en environmentbeheer formaliseren","Leg veilig beheer van secrets en omgevingen vast voor Vercel en Supabase.","Story","EPIC-08","P0","Todo","Release 1","release:r1;epic:security-ops;type:security-ops","EPIC-01","Geen secrets in code of onveilige configuratie."
"ST-705","RLS-policy tests toevoegen","Test aantoonbaar dat owner-only toegang technisch afgedwongen is.","Story","EPIC-08","P0","Todo","Release 1","release:r1;epic:security-ops;type:qa-security","ST-105","Owner-only model is aantoonbaar afgedwongen."
"EPIC-09","Launch-readiness","QA, copy review, DPIA-input en go-live checks afronden.","Epic","","P0","Todo","Release 1","release:r1;domain:launch","EPIC-01,EPIC-02,EPIC-03,EPIC-04,EPIC-05,EPIC-06,EPIC-07,EPIC-08",""
"ST-801","Kernflows handmatig testen","Voer end-to-end handmatige tests uit op mobiel en desktop.","Story","EPIC-09","P0","Todo","Release 1","release:r1;epic:launch;type:qa","EPIC-05,EPIC-06,EPIC-07","Belangrijkste user journeys zijn geverifieerd."
"ST-802","Accessibility check uitvoeren","Controleer touch targets, contrast en reduced motion.","Story","EPIC-09","P0","Todo","Release 1","release:r1;epic:launch;type:qa-ux","EPIC-05","Touch targets, contrast en reduced motion zijn gecontroleerd."
"ST-803","Copy review doen","Controleer onboarding, dashboardteksten en inzichten op wellness-copy.","Story","EPIC-09","P0","Todo","Release 1","release:r1;epic:launch;type:content-safety","EPIC-06","Geen medische of zorgdossier-taal in release 1."
"ST-804","DPIA-input en datacatalogus afronden","Rond privacyartefacten af op basis van de werkelijke MVP-scope.","Story","EPIC-09","P0","Todo","Release 1","release:r1;epic:launch;type:privacy","EPIC-08","Pre-launch privacyartefacten zijn gereed."
"ST-805","Go-live checklist opstellen","Maak een checklist voor launch, rollback, monitoring en incidentrespons.","Story","EPIC-09","P0","Todo","Release 1","release:r1;epic:launch;type:ops","EPIC-08","Team weet hoe launch en eerste incidentrespons verloopt."
1 ID Title Description Issue Type Epic Priority Status Phase Labels Depends On Definition of Done
2 EPIC-01 Fundament Projectbasis, omgevingen en design foundation neerzetten. Epic P0 Todo Release 1 release:r1;domain:platform
3 ST-001 Next.js projectbasis opzetten Zet de projectbasis op met TypeScript en de gekozen stylingaanpak. Story EPIC-01 P0 Todo Release 1 release:r1;epic:fundament;type:build EPIC-01 Project start lokaal en in preview zonder handmatige workarounds.
4 ST-002 Omgevingen definiëren Richt development, preview en production technisch in. Story EPIC-01 P0 Todo Release 1 release:r1;epic:fundament;type:ops ST-001 Development, preview en production zijn technisch ingericht.
5 ST-003 Component foundation neerzetten Bouw herbruikbare basiscomponenten voor formulieren, kaarten, knoppen en meldingen. Story EPIC-01 P0 Todo Release 1 release:r1;epic:fundament;type:ui ST-001 Herbruikbare basiscomponenten zijn mobiel bruikbaar.
6 ST-004 Foutafhandeling en lege staten ontwerpen Ontwerp en implementeer lege staten en bruikbare foutfeedback. Story EPIC-01 P0 Todo Release 1 release:r1;epic:fundament;type:ux ST-001 Gebruiker krijgt bruikbare feedback bij lege of foutieve situaties.
7 EPIC-02 Auth en profiel Inloggen, sessies, profiel en basisinstellingen werkend maken. Epic P0 Todo Release 1 release:r1;domain:auth EPIC-01
8 ST-101 Supabase Auth integreren Integreer Supabase Auth en de sessieflow in de app. Story EPIC-02 P0 Todo Release 1 release:r1;epic:auth-profiel;type:build EPIC-01 Gebruiker kan inloggen en beveiligde routes gebruiken.
9 ST-102 Profile- en UserSettings-model implementeren Implementeer profiel- en settingsmodellen per gebruiker. Story EPIC-02 P0 Todo Release 1 release:r1;epic:auth-profiel;type:build ST-101 Profiel en instellingen zijn per gebruiker beschikbaar.
10 ST-103 Onboardingflow bouwen Bouw een onboarding van maximaal drie schermen. Story EPIC-02 P0 Todo Release 1 release:r1;epic:auth-profiel;type:ux ST-101 Nieuwe gebruiker begrijpt schaal, positionering en basisinstellingen.
11 ST-104 Settingsscherm bouwen Bouw instellingen voor taal, timezone, reminders en zichtbaarheid van punten. Story EPIC-02 P0 Todo Release 1 release:r1;epic:auth-profiel;type:build ST-102 Taal, timezone, reminders en zichtbaarheid van punten zijn persistent.
12 ST-105 RLS-basispolicies inrichten Richt owner-only RLS-policies in voor profiel en instellingen. Story EPIC-02 P0 Todo Release 1 release:r1;epic:auth-profiel;type:security ST-101 Gebruiker kan uitsluitend eigen profiel en settings lezen of wijzigen.
13 EPIC-03 Ochtendcheck-in Energiescore, slaapkwaliteit en dagbudget implementeren. Epic P0 Todo Release 1 release:r1;domain:checkin EPIC-02
14 ST-201 EnergySlider en SleepQualityInput bouwen Bouw de invoercomponenten voor energiescore en slaapkwaliteit. Story EPIC-03 P0 Todo Release 1 release:r1;epic:ochtendcheckin;type:ui EPIC-02 Check-in kan mobiel comfortabel worden ingevuld.
15 ST-202 Server action voor createMorningCheckIn Implementeer de server action voor het opslaan van de ochtendcheck-in. Story EPIC-03 P0 Todo Release 1 release:r1;epic:ochtendcheckin;type:build ST-201 Check-in wordt opgeslagen met juiste validatie.
16 ST-203 Budgetlogica implementeren Bouw mapping van score naar energy level en dagbudget. Story EPIC-03 P0 Todo Release 1 release:r1;epic:ochtendcheckin;type:logic ST-202 Score mapping en budgetberekening zijn consistent en testbaar.
17 ST-204 Check-instatus op dashboard tonen Toon direct score, niveau en budget op het dashboard. Story EPIC-03 P0 Todo Release 1 release:r1;epic:ochtendcheckin;type:ui ST-202 Gebruiker ziet direct score, niveau en budget.
18 ST-205 Unit tests voor score- en budgetmapping Voeg tests toe voor grenswaarden en budgetberekening. Story EPIC-03 P0 Todo Release 1 release:r1;epic:ochtendcheckin;type:qa ST-203 Belangrijkste grenswaarden zijn afgedekt.
19 EPIC-04 Dagplanning Activiteiten plannen en budgetfeedback tonen. Epic P0 Todo Release 1 release:r1;domain:planning EPIC-03
20 ST-301 Datamodel voor activiteiten implementeren Implementeer tabellen en seed-data voor activiteiten, categorieen en skip-redenen. Story EPIC-04 P0 Todo Release 1 release:r1;epic:dagplanning;type:build EPIC-03 Migraties en seed-data voor categorieen en skip-redenen zijn aanwezig.
21 ST-302 Planningformulier bouwen Bouw het formulier voor naam, categorie, duur, impact en prioriteit. Story EPIC-04 P0 Todo Release 1 release:r1;epic:dagplanning;type:ui ST-301 Activiteit kan met naam, categorie, duur, impact en prioriteit worden aangemaakt.
22 ST-303 Autocomplete op eerdere activiteiten toevoegen Maak snelle herselectie van eerder gebruikte activiteiten mogelijk. Story EPIC-04 P0 Todo Release 1 release:r1;epic:dagplanning;type:ux ST-302 Veelgebruikte activiteiten zijn snel opnieuw te kiezen.
23 ST-304 EnergyMeter en lopend totaal implementeren Toon het lopende totaal ten opzichte van het dagbudget. Story EPIC-04 P0 Todo Release 1 release:r1;epic:dagplanning;type:logic-ui ST-302 Totaal update direct na elke wijziging.
24 ST-305 Overschrijdingswaarschuwing toevoegen Toon een niet-blokkerende waarschuwing bij budgetoverschrijding. Story EPIC-04 P0 Todo Release 1 release:r1;epic:dagplanning;type:ux ST-304 Gebruiker krijgt feedback maar behoudt regie.
25 EPIC-05 Evaluatie en dagoverzicht Activiteiten afronden en dagresultaat tonen. Epic P0 Todo Release 1 release:r1;domain:evaluatie EPIC-04
26 ST-401 Statusflows voor uitgevoerd, geskipt en aangepast bouwen Implementeer de drie kernstatussen voor activiteiten. Story EPIC-05 P0 Todo Release 1 release:r1;epic:evaluatie;type:build EPIC-04 Alle drie de statussen worden correct opgeslagen.
27 ST-402 Evaluatievelden toevoegen Voeg contextuele velden toe voor werkelijke duur, fatigue en skip-reden. Story EPIC-05 P0 Todo Release 1 release:r1;epic:evaluatie;type:ui ST-401 Contextuele velden verschijnen passend per status.
28 ST-403 Ongeplande activiteiten ondersteunen Maak het mogelijk een ongeplande activiteit toe te voegen en mee te tellen. Story EPIC-05 P0 Todo Release 1 release:r1;epic:evaluatie;type:build ST-401 Ongeplande activiteit telt mee in werkelijke totalen.
29 ST-404 Dagoverzicht bouwen Bouw het overzicht met gepland versus uitgevoerd en statusverdeling. Story EPIC-05 P0 Todo Release 1 release:r1;epic:evaluatie;type:ui ST-401 Gepland versus uitgevoerd en statusverdeling zijn zichtbaar.
30 ST-405 Dagaggregaties server-side implementeren Bereken dagtotalen en samenvatting server-side. Story EPIC-05 P0 Todo Release 1 release:r1;epic:evaluatie;type:logic ST-404 Dagtotalen blijven consistent met individuele records.
31 EPIC-06 Weekoverzicht en inzichten Weekpatronen en veilige insightregels toevoegen. Epic P1 Todo Release 1 release:r1;domain:insights EPIC-05
32 ST-501 Weekoverzichtspagina bouwen Bouw de pagina voor weekterugblik. Story EPIC-06 P1 Todo Release 1 release:r1;epic:weekoverzicht;type:ui EPIC-05 Gebruiker kan per week terugkijken.
33 ST-502 Weekaggregaties bouwen Bereken gemiddelde energie en budget-adherence per week. Story EPIC-06 P1 Todo Release 1 release:r1;epic:weekoverzicht;type:logic ST-501 Gemiddelde energie en budget-adherence zijn herleidbaar en testbaar.
34 ST-503 Skip-patronen zichtbaar maken Toon patronen rond skip-redenen en terugkerende activiteiten. Story EPIC-06 P1 Todo Release 1 release:r1;epic:weekoverzicht;type:logic-ui ST-502 Patronen worden alleen bij voldoende data getoond.
35 ST-504 Insightregels met datadrempels definiëren Leg guardrails vast voor het tonen van patronen. Story EPIC-06 P1 Todo Release 1 release:r1;epic:weekoverzicht;type:safety-logic ST-502 Geen patroonclaim zonder guardrails.
36 ST-505 Insightcopy toetsen op niet-medische formulering Controleer alle inzichtteksten op wellness-positionering. Story EPIC-06 P1 Todo Release 1 release:r1;epic:weekoverzicht;type:content ST-504 Alle teksten blijven binnen wellness-positionering.
37 EPIC-07 Reflectie en reminders Optionele T+1/T+2 follow-up mogelijk maken. Epic P1 Todo Release 1 release:r1;domain:reminders EPIC-05
38 ST-601 ReflectionCheckIn-model en flow implementeren Implementeer model en basisflow voor reflectie na een zwaardere dag. Story EPIC-07 P1 Todo Release 1 release:r1;epic:reflectie;type:build EPIC-05 Reflecties kunnen aan eerdere dagen gekoppeld worden.
39 ST-602 Joblogica voor T+1/T+2 prompts bouwen Bepaal server-side welke gebruikers een reflectieprompt moeten zien. Story EPIC-07 P1 Todo Release 1 release:r1;epic:reflectie;type:logic-ops ST-601 Prompts worden niet dubbel of willekeurig aangemaakt.
40 ST-603 Instellingsoptie voor reflectieprompts toevoegen Maak opt-in beheerbaar vanuit instellingen. Story EPIC-07 P1 Todo Release 1 release:r1;epic:reflectie;type:build ST-104 Gebruiker beheert opt-in zelfstandig.
41 ST-604 Korte reflectie-UI bouwen Bouw een lichte, niet-medische reflectieprompt. Story EPIC-07 P1 Todo Release 1 release:r1;epic:reflectie;type:ui ST-602 Prompt voelt licht en niet medisch.
42 EPIC-08 Security en operations Logging, hardening, back-up en policy-tests. Epic P0 Todo Release 1 release:r1;domain:security-ops EPIC-01,EPIC-02,EPIC-03,EPIC-04,EPIC-05,EPIC-06,EPIC-07
43 ST-701 Rate limiting toevoegen Bescherm kritieke auth- en mutatieroutes tegen misbruik. Story EPIC-08 P0 Todo Release 1 release:r1;epic:security-ops;type:security EPIC-02 Kritieke auth- en mutatieroutes zijn beschermd.
44 ST-702 Logging voor fouten en kernmutaties inrichten Log fouten, loginproblemen en belangrijke mutaties centraal. Story EPIC-08 P0 Todo Release 1 release:r1;epic:security-ops;type:ops EPIC-03,EPIC-04,EPIC-05 Kerngebeurtenissen zijn herleidbaar.
45 ST-703 Back-up en herstelstrategie documenteren en testen Werk het restore-pad uit en valideer het. Story EPIC-08 P0 Todo Release 1 release:r1;epic:security-ops;type:ops EPIC-01 Restore-pad is aantoonbaar gevalideerd.
46 ST-704 Secrets- en environmentbeheer formaliseren Leg veilig beheer van secrets en omgevingen vast voor Vercel en Supabase. Story EPIC-08 P0 Todo Release 1 release:r1;epic:security-ops;type:security-ops EPIC-01 Geen secrets in code of onveilige configuratie.
47 ST-705 RLS-policy tests toevoegen Test aantoonbaar dat owner-only toegang technisch afgedwongen is. Story EPIC-08 P0 Todo Release 1 release:r1;epic:security-ops;type:qa-security ST-105 Owner-only model is aantoonbaar afgedwongen.
48 EPIC-09 Launch-readiness QA, copy review, DPIA-input en go-live checks afronden. Epic P0 Todo Release 1 release:r1;domain:launch EPIC-01,EPIC-02,EPIC-03,EPIC-04,EPIC-05,EPIC-06,EPIC-07,EPIC-08
49 ST-801 Kernflows handmatig testen Voer end-to-end handmatige tests uit op mobiel en desktop. Story EPIC-09 P0 Todo Release 1 release:r1;epic:launch;type:qa EPIC-05,EPIC-06,EPIC-07 Belangrijkste user journeys zijn geverifieerd.
50 ST-802 Accessibility check uitvoeren Controleer touch targets, contrast en reduced motion. Story EPIC-09 P0 Todo Release 1 release:r1;epic:launch;type:qa-ux EPIC-05 Touch targets, contrast en reduced motion zijn gecontroleerd.
51 ST-803 Copy review doen Controleer onboarding, dashboardteksten en inzichten op wellness-copy. Story EPIC-09 P0 Todo Release 1 release:r1;epic:launch;type:content-safety EPIC-06 Geen medische of zorgdossier-taal in release 1.
52 ST-804 DPIA-input en datacatalogus afronden Rond privacyartefacten af op basis van de werkelijke MVP-scope. Story EPIC-09 P0 Todo Release 1 release:r1;epic:launch;type:privacy EPIC-08 Pre-launch privacyartefacten zijn gereed.
53 ST-805 Go-live checklist opstellen Maak een checklist voor launch, rollback, monitoring en incidentrespons. Story EPIC-09 P0 Todo Release 1 release:r1;epic:launch;type:ops EPIC-08 Team weet hoe launch en eerste incidentrespons verloopt.

View file

@ -0,0 +1,160 @@
# Inspannings Monitor Backlog
Dit bestand zet de huidige documentatieset om naar een concrete development backlog voor `release 1`.
## Uitgangspunten
- Productnaam: `Inspannings Monitor`
- Positionering: `wellness/self-management`
- Release 1: alleen individuele gebruikers
- Doelgroep: volwassenen
- Voertaal release 1: Nederlands
- Stack: `Vercel + Supabase Auth + Supabase PostgreSQL`
- Buiten scope release 1: sharing, AI, PDF-export, medische claims, habit-tracking buiten slaapkwaliteit
## Aanbevolen bouwvolgorde
1. Fundament en projectopzet
2. Authenticatie, profiel en instellingen
3. Ochtendcheck-in en budgetlogica
4. Activiteiten plannen
5. Activiteiten evalueren en dagoverzicht
6. Weekoverzicht en inzichten
7. Reflectieprompts en geplande taken
8. Privacy, security, logging en launch-readiness
## Epic-overzicht
| Epic | Titel | Prioriteit | Afhankelijk van | Doel |
| --- | --- | --- | --- | --- |
| EPIC-01 | Fundament | P0 | - | Projectbasis, omgevingen en design foundation neerzetten |
| EPIC-02 | Auth en profiel | P0 | EPIC-01 | Inloggen, sessies, profiel en basisinstellingen |
| EPIC-03 | Ochtendcheck-in | P0 | EPIC-02 | Energiescore, slaapkwaliteit en dagbudget |
| EPIC-04 | Dagplanning | P0 | EPIC-03 | Activiteiten plannen en budgetfeedback tonen |
| EPIC-05 | Evaluatie en dagoverzicht | P0 | EPIC-04 | Activiteiten afronden en dagresultaat tonen |
| EPIC-06 | Weekoverzicht en inzichten | P1 | EPIC-05 | Weekpatronen en veilige insightregels |
| EPIC-07 | Reflectie en reminders | P1 | EPIC-05 | Optionele T+1/T+2 follow-up |
| EPIC-08 | Security en operations | P0 | EPIC-01 t/m EPIC-07 | Logging, hardening, back-up en policy-tests |
| EPIC-09 | Launch-readiness | P0 | EPIC-01 t/m EPIC-08 | QA, copy review, DPIA-input en go-live checks |
## EPIC-01 Fundament
Doel: een stabiele technische basis waarop alle kernflows kunnen landen.
| Story ID | Titel | Type | Definition of done |
| --- | --- | --- | --- |
| ST-001 | Next.js projectbasis opzetten | Build | Project start lokaal en in preview zonder handmatige workarounds |
| ST-002 | Omgevingen definiëren | Ops | Development, preview en production zijn technisch ingericht |
| ST-003 | Component foundation neerzetten | UI | Herbruikbare basiscomponenten zijn mobiel bruikbaar |
| ST-004 | Foutafhandeling en lege staten ontwerpen | UX | Gebruiker krijgt bruikbare feedback bij lege of foutieve situaties |
## EPIC-02 Auth en profiel
Doel: iedere gebruiker kan veilig een eigen account en basisinstellingen beheren.
| Story ID | Titel | Type | Definition of done |
| --- | --- | --- | --- |
| ST-101 | Supabase Auth integreren | Build | Gebruiker kan inloggen en beveiligde routes gebruiken |
| ST-102 | Profile- en UserSettings-model implementeren | Build | Profiel en instellingen zijn per gebruiker beschikbaar |
| ST-103 | Onboardingflow bouwen | UX | Nieuwe gebruiker begrijpt schaal, positionering en basisinstellingen |
| ST-104 | Settingsscherm bouwen | Build | Taal, timezone, reminders en zichtbaarheid van punten zijn persistent |
| ST-105 | RLS-basispolicies inrichten | Security | Gebruiker kan uitsluitend eigen profiel en settings lezen of wijzigen |
## EPIC-03 Ochtendcheck-in
Doel: de gebruiker kan met minimale inspanning de dag starten en een budget krijgen.
| Story ID | Titel | Type | Definition of done |
| --- | --- | --- | --- |
| ST-201 | EnergySlider en SleepQualityInput bouwen | UI | Check-in kan mobiel comfortabel worden ingevuld |
| ST-202 | Server action voor createMorningCheckIn | Build | Check-in wordt opgeslagen met juiste validatie |
| ST-203 | Budgetlogica implementeren | Logic | Score mapping en budgetberekening zijn consistent en testbaar |
| ST-204 | Check-instatus op dashboard tonen | UI | Gebruiker ziet direct score, niveau en budget |
| ST-205 | Unit tests voor score- en budgetmapping | QA | Belangrijkste grenswaarden zijn afgedekt |
## EPIC-04 Dagplanning
Doel: de gebruiker kan activiteiten voor de dag plannen binnen een eenvoudig energiemodel.
| Story ID | Titel | Type | Definition of done |
| --- | --- | --- | --- |
| ST-301 | Datamodel voor activiteiten implementeren | Build | Migraties en seed-data voor categorieën en skip-redenen zijn aanwezig |
| ST-302 | Planningformulier bouwen | UI | Activiteit kan met naam, categorie, duur, impact en prioriteit worden aangemaakt |
| ST-303 | Autocomplete op eerdere activiteiten toevoegen | UX | Veelgebruikte activiteiten zijn snel opnieuw te kiezen |
| ST-304 | EnergyMeter en lopend totaal implementeren | Logic/UI | Totaal update direct na elke wijziging |
| ST-305 | Overschrijdingswaarschuwing toevoegen | UX | Gebruiker krijgt feedback maar behoudt regie |
## EPIC-05 Evaluatie en dagoverzicht
Doel: de kernloop afronden door geplande activiteiten te evalueren en terug te zien.
| Story ID | Titel | Type | Definition of done |
| --- | --- | --- | --- |
| ST-401 | Statusflows voor uitgevoerd, geskipt en aangepast bouwen | Build | Alle drie de statussen worden correct opgeslagen |
| ST-402 | Evaluatievelden toevoegen | UI | Contextuele velden verschijnen passend per status |
| ST-403 | Ongeplande activiteiten ondersteunen | Build | Ongeplande activiteit telt mee in werkelijke totalen |
| ST-404 | Dagoverzicht bouwen | UI | Gepland versus uitgevoerd en statusverdeling zijn zichtbaar |
| ST-405 | Dagaggregaties server-side implementeren | Logic | Dagtotalen blijven consistent met individuele records |
## EPIC-06 Weekoverzicht en inzichten
Doel: terugkijken op patronen zonder de wellness-guardrails te verlaten.
| Story ID | Titel | Type | Definition of done |
| --- | --- | --- | --- |
| ST-501 | Weekoverzichtspagina bouwen | UI | Gebruiker kan per week terugkijken |
| ST-502 | Weekaggregaties bouwen | Logic | Gemiddelde energie en budget-adherence zijn herleidbaar en testbaar |
| ST-503 | Skip-patronen zichtbaar maken | Logic/UI | Patronen worden alleen bij voldoende data getoond |
| ST-504 | Insightregels met datadrempels definiëren | Safety/Logic | Geen patroonclaim zonder guardrails |
| ST-505 | Insightcopy toetsen op niet-medische formulering | Content | Alle teksten blijven binnen wellness-positionering |
## EPIC-07 Reflectie en reminders
Doel: gebruikers optioneel laten terugblikken na zwaardere dagen.
| Story ID | Titel | Type | Definition of done |
| --- | --- | --- | --- |
| ST-601 | ReflectionCheckIn-model en flow implementeren | Build | Reflecties kunnen aan eerdere dagen gekoppeld worden |
| ST-602 | Joblogica voor T+1/T+2 prompts bouwen | Logic/Ops | Prompts worden niet dubbel of willekeurig aangemaakt |
| ST-603 | Instellingsoptie voor reflectieprompts toevoegen | Build | Gebruiker beheert opt-in zelfstandig |
| ST-604 | Korte reflectie-UI bouwen | UI | Prompt voelt licht en niet medisch |
## EPIC-08 Security en operations
Doel: de wellness-first MVP technisch hard genoeg maken voor echte gebruikers.
| Story ID | Titel | Type | Definition of done |
| --- | --- | --- | --- |
| ST-701 | Rate limiting toevoegen | Security | Kritieke auth- en mutatieroutes zijn beschermd |
| ST-702 | Logging voor fouten en kernmutaties inrichten | Ops | Kerngebeurtenissen zijn herleidbaar |
| ST-703 | Back-up en herstelstrategie documenteren en testen | Ops | Restore-pad is aantoonbaar gevalideerd |
| ST-704 | Secrets- en environmentbeheer formaliseren | Security/Ops | Geen secrets in code of onveilige configuratie |
| ST-705 | RLS-policy tests toevoegen | QA/Security | Owner-only model is aantoonbaar afgedwongen |
## EPIC-09 Launch-readiness
Doel: release 1 verantwoord kunnen opleveren.
| Story ID | Titel | Type | Definition of done |
| --- | --- | --- | --- |
| ST-801 | Kernflows handmatig testen | QA | Belangrijkste user journeys zijn geverifieerd |
| ST-802 | Accessibility check uitvoeren | QA/UX | Touch targets, contrast en reduced motion zijn gecontroleerd |
| ST-803 | Copy review doen | Content/Safety | Geen medische of zorgdossier-taal in release 1 |
| ST-804 | DPIA-input en datacatalogus afronden | Privacy | Pre-launch privacyartefacten zijn gereed |
| ST-805 | Go-live checklist opstellen | Ops | Team weet hoe launch en eerste incidentrespons verloopt |
## Release-level definition of done
- Alle `P0`-epics zijn functioneel afgerond
- Geen blocking bugs in ochtendcheck-in, planning, evaluatie of dashboardflow
- Owner-only toegang is technisch afgedwongen en getest
- Launchcopy blijft binnen wellness/self-management claims
- Privacy- en securitybasis is gereed voor echte gebruikersintroductie
## Niet in release 1
- Viewerrollen, delen met zorgverleners of naasten, en granular sharing
- Habit tracking buiten slaapkwaliteit
- Database-gestuurde vertalingen of extra talen
- AI-inzichten, chatbotfuncties of vrije tekstinterpretatie
- PDF-export, zorgdossierkoppelingen of medical-track features

View file

@ -0,0 +1,110 @@
# Inspannings Monitor: eerste 30 minuten in Linear
Gebruik dit als snelle start nadat je workspace klaar is.
## 0-5 minuten: basis neerzetten
- Open of maak de workspace `Inspannings Monitor`
- Controleer dat je adminrechten hebt
- Maak één team aan: `Inspannings Monitor`
- Laat de issueworkflow simpel:
- `Backlog`
- `Todo`
- `In Progress`
- `Done`
- `Canceled`
- Zet `Cycles` nog niet aan
## 5-10 minuten: release-structuur maken
- Maak de initiative `Release 1 MVP`
- Maak de 9 projects uit [inspannings-monitor-linear-projects.md](./inspannings-monitor-linear-projects.md)
- Gebruik de samenvattingen uit dat document
- Zet deze projects direct op `Planned`:
- `Fundament`
- `Auth en profiel`
- `Ochtendcheck-in`
- `Dagplanning`
- `Evaluatie en dagoverzicht`
- `Security en operations`
- Zet deze op `Backlog`:
- `Weekoverzicht en inzichten`
- `Reflectie en reminders`
- `Launch-readiness`
## 10-15 minuten: labels klaarzetten
Maak minimaal deze labels aan:
- `release:r1`
- `type:build`
- `type:ui`
- `type:logic`
- `type:qa`
- `type:security`
- `type:ops`
- `type:ux`
- `type:content`
- `type:privacy`
Maak daarna de `epic:*` labels uit [inspannings-monitor-linear-setup.md](./inspannings-monitor-linear-setup.md).
## 15-20 minuten: backlog importeren
- Open [inspannings-monitor-linear-import-checklist.md](./inspannings-monitor-linear-import-checklist.md)
- Gebruik [inspannings-monitor-linear-import-issues.csv](./inspannings-monitor-linear-import-issues.csv)
- Importeer de `43` issues
- Controleer direct:
- team klopt
- status is `Backlog`
- prioriteit is `high` of `medium`
- labels zijn meegekomen
## 20-25 minuten: eerste opschoning
- Controleer of issues aan de juiste projects hangen
- Als projectkoppeling ontbreekt:
- filter op `epic:*` label
- koppel issues in bulk aan het juiste project
- Koppel daarna alles aan initiative `Release 1 MVP` als dat nog niet goed staat
- Sorteer de backlog op `Priority`
## 25-30 minuten: eerste views maken
Maak deze saved views:
- `Release 1 - All`
- `P0`
- `Security / Privacy`
- `Launch-readiness`
Als je daarna nog tijd hebt:
- wijs 2 of 3 issues uit `Fundament` toe
- zet alleen die issues op `Todo`
- laat de rest nog in `Backlog`
## Wat je nog niet moet doen
- nog geen cycles aanzetten
- nog geen extra workflowstappen maken
- nog geen sub-teams maken
- nog geen extra releasestructuur toevoegen
- nog geen medical-track werk mengen met release 1
## Beste eerste werkset
Als je meteen wilt starten met uitvoering, begin dan hier:
1. `ST-001` Next.js projectbasis opzetten
2. `ST-002` Omgevingen definiëren
3. `ST-101` Supabase Auth integreren
4. `ST-102` Profile- en UserSettings-model implementeren
## Relevante bestanden
- [inspannings-monitor-linear-setup.md](./inspannings-monitor-linear-setup.md)
- [inspannings-monitor-linear-import-checklist.md](./inspannings-monitor-linear-import-checklist.md)
- [inspannings-monitor-linear-projects.md](./inspannings-monitor-linear-projects.md)
- [inspannings-monitor-linear-import-issues.csv](./inspannings-monitor-linear-import-issues.csv)
- [inspannings-monitor-backlog.md](./inspannings-monitor-backlog.md)

View file

@ -0,0 +1,185 @@
# Inspannings Monitor Linear Import Checklist
Gebruik deze checklist om de backlog en projectstructuur van `Inspannings Monitor` gecontroleerd in `Linear` te krijgen.
## Doel
Na afronding van deze checklist heb je:
- één `Linear` workspace
- één team voor `release 1`
- één initiative voor de MVP
- negen projects voor de epics
- een geïmporteerde issue-backlog voor alle stories
- een eerste kwaliteitscontrole op mapping, labels en prioriteiten
## Benodigde bestanden
- [inspannings-monitor-linear-setup.md](./inspannings-monitor-linear-setup.md)
- [inspannings-monitor-linear-import-issues.csv](./inspannings-monitor-linear-import-issues.csv)
- [inspannings-monitor-linear-projects.csv](./inspannings-monitor-linear-projects.csv)
- [inspannings-monitor-linear-projects.md](./inspannings-monitor-linear-projects.md)
- [inspannings-monitor-backlog.md](./inspannings-monitor-backlog.md)
## Fase 1: Workspace voorbereiden
- [ ] Maak of kies de `Linear` workspace voor `Inspannings Monitor`
- [ ] Bevestig dat je adminrechten hebt in de workspace
- [ ] Maak één top-level team aan met naam `Inspannings Monitor`
- [ ] Laat de teamworkflow in het begin simpel:
- `Backlog`
- `Todo`
- `In Progress`
- `Done`
- `Canceled`
- [ ] Zet `Cycles` nog niet aan
- [ ] Gebruik nog geen extra sub-teams
## Fase 2: Labels voorbereiden
Maak deze labels aan als teamlabels:
- [ ] `release:r1`
- [ ] `type:build`
- [ ] `type:ui`
- [ ] `type:logic`
- [ ] `type:qa`
- [ ] `type:security`
- [ ] `type:ops`
- [ ] `type:ux`
- [ ] `type:content`
- [ ] `type:privacy`
- [ ] `epic:fundament`
- [ ] `epic:auth-profiel`
- [ ] `epic:ochtendcheckin`
- [ ] `epic:dagplanning`
- [ ] `epic:evaluatie`
- [ ] `epic:weekoverzicht`
- [ ] `epic:reflectie`
- [ ] `epic:security-ops`
- [ ] `epic:launch`
## Fase 3: Initiative en projects aanmaken
### Initiative
- [ ] Maak één initiative aan: `Release 1 MVP`
### Projects
Maak deze negen projects aan:
- [ ] `Fundament`
- [ ] `Auth en profiel`
- [ ] `Ochtendcheck-in`
- [ ] `Dagplanning`
- [ ] `Evaluatie en dagoverzicht`
- [ ] `Weekoverzicht en inzichten`
- [ ] `Reflectie en reminders`
- [ ] `Security en operations`
- [ ] `Launch-readiness`
### Aanbevolen projectleads
- [ ] Wijs alleen projectleads toe als die nu al duidelijk zijn
- [ ] Laat anders de leads leeg bij de eerste importfase
## Fase 4: Import voorbereiden
- [ ] Open de actuele import-CSV: [inspannings-monitor-linear-import-issues.csv](./inspannings-monitor-linear-import-issues.csv)
- [ ] Controleer steekproefsgewijs:
- `Team` = `Inspannings Monitor`
- `Status` = `Backlog`
- `Priority` = `high` of `medium`
- `Project` bevat één van de negen epic-projectnamen
- `Initiatives` = `Release 1 MVP`
- [ ] Maak desnoods eerst een testworkspace of testteam als je Linear eerst wilt proefimporteren
## Fase 5: Import uitvoeren
Volgens de actuele `Linear`-documentatie loopt import van “other” bronnen via hun importer/CLI met een CSV in `Linear`-formaat.
- [ ] Ga in Linear naar `Settings > Administration > Import/Export`
- [ ] Kies de importroute voor een generieke / `Other`-bron of `Linear CSV`-aanpak
- [ ] Upload of importeer het bestand `inspannings-monitor-linear-import-issues.csv`
- [ ] Gebruik het team `Inspannings Monitor` als doel
- [ ] Rond de import af
## Fase 6: Directe controle na import
Controleer meteen deze punten:
- [ ] Zijn alle `43` issues aanwezig?
- [ ] Staan de issues in het team `Inspannings Monitor`?
- [ ] Hebben issues status `Backlog`?
- [ ] Zijn prioriteiten zichtbaar als `high` of `medium`?
- [ ] Zijn labels meegekomen?
- [ ] Zijn issues aan de juiste projects gekoppeld?
- [ ] Is de initiative-koppeling zichtbaar?
## Fase 7: Als project- of initiative-koppeling niet goed is meegekomen
Gebruik dan deze fallback:
- [ ] Filter op label `epic:fundament` en koppel alle resultaten in bulk aan project `Fundament`
- [ ] Filter op label `epic:auth-profiel` en koppel in bulk aan `Auth en profiel`
- [ ] Filter op label `epic:ochtendcheckin` en koppel in bulk aan `Ochtendcheck-in`
- [ ] Filter op label `epic:dagplanning` en koppel in bulk aan `Dagplanning`
- [ ] Filter op label `epic:evaluatie` en koppel in bulk aan `Evaluatie en dagoverzicht`
- [ ] Filter op label `epic:weekoverzicht` en koppel in bulk aan `Weekoverzicht en inzichten`
- [ ] Filter op label `epic:reflectie` en koppel in bulk aan `Reflectie en reminders`
- [ ] Filter op label `epic:security-ops` en koppel in bulk aan `Security en operations`
- [ ] Filter op label `epic:launch` en koppel in bulk aan `Launch-readiness`
- [ ] Selecteer daarna alle release-1 issues en koppel ze in bulk aan initiative `Release 1 MVP`
## Fase 8: Eerste opschoning in Linear
- [ ] Sorteer backlog eerst op `Priority`
- [ ] Controleer of alle `P0`-stories als `high` binnengekomen zijn
- [ ] Controleer of alle `P1`-stories als `medium` binnengekomen zijn
- [ ] Archiveer nog niets in deze eerste fase
- [ ] Voeg nog geen cycles toe
- [ ] Voeg nog geen extra workflowstappen toe
## Fase 9: Eerste operationele inrichting
- [ ] Maak een opgeslagen view voor `Release 1 - All`
- [ ] Maak een view voor `P0`
- [ ] Maak een view voor `Security / Privacy`
- [ ] Maak een view voor `Launch-readiness`
- [ ] Maak eventueel één view `My work` of `This week`
## Fase 10: Go / No-Go na import
### Go als dit klopt
- [ ] Alle `43` issues staan in Linear
- [ ] De negen projects bestaan
- [ ] De initiative bestaat
- [ ] Labels en prioriteiten zijn bruikbaar
- [ ] De backlog is zonder extra handwerk te filteren per epic
### No-Go als dit misgaat
- [ ] Issues missen of zijn dubbel geïmporteerd
- [ ] Projectkoppeling is structureel kapot
- [ ] Statusmapping is onbruikbaar
- [ ] CSV blijkt niet goed te matchen met de importer
Als `No-Go`: import verwijderen, mapping aanpassen, en opnieuw importeren.
## Eerste week in Linear
Voor de eerste week zou ik dit simpel houden:
- gebruik alleen `Backlog`, `Todo`, `In Progress`, `Done`
- plan nog geen formele cycles
- werk eerst `EPIC-01` en `EPIC-02` uit
- gebruik labels en projects voor overzicht, niet extra workflowcomplexiteit
## Bronnen
- [Linear Importer docs](https://linear.app/docs/import-issues)
- [Linear Teams docs](https://linear.app/docs/teams)
- [Linear Projects docs](https://linear.app/docs/projects)
- [Linear Priority docs](https://linear.app/docs/priority)

View file

@ -0,0 +1,431 @@
ID,Team,Title,Description,Status,Estimate,Priority,Project ID,Project,Creator,Assignee,Labels,Cycle Number,Cycle Name,Cycle Start,Cycle End,Created,Updated,Started,Triaged,Completed,Canceled,Archived,Due Date,Parent issue,Initiatives,Project Milestone ID,Project Milestone,SLA Status
,Inspannings Monitor,Next.js projectbasis opzetten,"Zet de projectbasis op met TypeScript en de gekozen stylingaanpak.
## Context
- Bron backlog-ID: `ST-001`
- Epic / project: `Fundament`
- Fase: `Release 1`
- Afhankelijk van: `EPIC-01`
## Definition of done
Project start lokaal en in preview zonder handmatige workarounds.",Backlog,,high,,Fundament,,,"release:r1, epic:fundament, type:build",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Omgevingen definiëren,"Richt development, preview en production technisch in.
## Context
- Bron backlog-ID: `ST-002`
- Epic / project: `Fundament`
- Fase: `Release 1`
- Afhankelijk van: `ST-001`
## Definition of done
Development, preview en production zijn technisch ingericht.",Backlog,,high,,Fundament,,,"release:r1, epic:fundament, type:ops",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Component foundation neerzetten,"Bouw herbruikbare basiscomponenten voor formulieren, kaarten, knoppen en meldingen.
## Context
- Bron backlog-ID: `ST-003`
- Epic / project: `Fundament`
- Fase: `Release 1`
- Afhankelijk van: `ST-001`
## Definition of done
Herbruikbare basiscomponenten zijn mobiel bruikbaar.",Backlog,,high,,Fundament,,,"release:r1, epic:fundament, type:ui",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Foutafhandeling en lege staten ontwerpen,"Ontwerp en implementeer lege staten en bruikbare foutfeedback.
## Context
- Bron backlog-ID: `ST-004`
- Epic / project: `Fundament`
- Fase: `Release 1`
- Afhankelijk van: `ST-001`
## Definition of done
Gebruiker krijgt bruikbare feedback bij lege of foutieve situaties.",Backlog,,high,,Fundament,,,"release:r1, epic:fundament, type:ux",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Supabase Auth integreren,"Integreer Supabase Auth en de sessieflow in de app.
## Context
- Bron backlog-ID: `ST-101`
- Epic / project: `Auth en profiel`
- Fase: `Release 1`
- Afhankelijk van: `EPIC-01`
## Definition of done
Gebruiker kan inloggen en beveiligde routes gebruiken.",Backlog,,high,,Auth en profiel,,,"release:r1, epic:auth-profiel, type:build",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Profile- en UserSettings-model implementeren,"Implementeer profiel- en settingsmodellen per gebruiker.
## Context
- Bron backlog-ID: `ST-102`
- Epic / project: `Auth en profiel`
- Fase: `Release 1`
- Afhankelijk van: `ST-101`
## Definition of done
Profiel en instellingen zijn per gebruiker beschikbaar.",Backlog,,high,,Auth en profiel,,,"release:r1, epic:auth-profiel, type:build",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Onboardingflow bouwen,"Bouw een onboarding van maximaal drie schermen.
## Context
- Bron backlog-ID: `ST-103`
- Epic / project: `Auth en profiel`
- Fase: `Release 1`
- Afhankelijk van: `ST-101`
## Definition of done
Nieuwe gebruiker begrijpt schaal, positionering en basisinstellingen.",Backlog,,high,,Auth en profiel,,,"release:r1, epic:auth-profiel, type:ux",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Settingsscherm bouwen,"Bouw instellingen voor taal, timezone, reminders en zichtbaarheid van punten.
## Context
- Bron backlog-ID: `ST-104`
- Epic / project: `Auth en profiel`
- Fase: `Release 1`
- Afhankelijk van: `ST-102`
## Definition of done
Taal, timezone, reminders en zichtbaarheid van punten zijn persistent.",Backlog,,high,,Auth en profiel,,,"release:r1, epic:auth-profiel, type:build",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,RLS-basispolicies inrichten,"Richt owner-only RLS-policies in voor profiel en instellingen.
## Context
- Bron backlog-ID: `ST-105`
- Epic / project: `Auth en profiel`
- Fase: `Release 1`
- Afhankelijk van: `ST-101`
## Definition of done
Gebruiker kan uitsluitend eigen profiel en settings lezen of wijzigen.",Backlog,,high,,Auth en profiel,,,"release:r1, epic:auth-profiel, type:security",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,EnergySlider en SleepQualityInput bouwen,"Bouw de invoercomponenten voor energiescore en slaapkwaliteit.
## Context
- Bron backlog-ID: `ST-201`
- Epic / project: `Ochtendcheck-in`
- Fase: `Release 1`
- Afhankelijk van: `EPIC-02`
## Definition of done
Check-in kan mobiel comfortabel worden ingevuld.",Backlog,,high,,Ochtendcheck-in,,,"release:r1, epic:ochtendcheckin, type:ui",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Server action voor createMorningCheckIn,"Implementeer de server action voor het opslaan van de ochtendcheck-in.
## Context
- Bron backlog-ID: `ST-202`
- Epic / project: `Ochtendcheck-in`
- Fase: `Release 1`
- Afhankelijk van: `ST-201`
## Definition of done
Check-in wordt opgeslagen met juiste validatie.",Backlog,,high,,Ochtendcheck-in,,,"release:r1, epic:ochtendcheckin, type:build",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Budgetlogica implementeren,"Bouw mapping van score naar energy level en dagbudget.
## Context
- Bron backlog-ID: `ST-203`
- Epic / project: `Ochtendcheck-in`
- Fase: `Release 1`
- Afhankelijk van: `ST-202`
## Definition of done
Score mapping en budgetberekening zijn consistent en testbaar.",Backlog,,high,,Ochtendcheck-in,,,"release:r1, epic:ochtendcheckin, type:logic",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Check-instatus op dashboard tonen,"Toon direct score, niveau en budget op het dashboard.
## Context
- Bron backlog-ID: `ST-204`
- Epic / project: `Ochtendcheck-in`
- Fase: `Release 1`
- Afhankelijk van: `ST-202`
## Definition of done
Gebruiker ziet direct score, niveau en budget.",Backlog,,high,,Ochtendcheck-in,,,"release:r1, epic:ochtendcheckin, type:ui",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Unit tests voor score- en budgetmapping,"Voeg tests toe voor grenswaarden en budgetberekening.
## Context
- Bron backlog-ID: `ST-205`
- Epic / project: `Ochtendcheck-in`
- Fase: `Release 1`
- Afhankelijk van: `ST-203`
## Definition of done
Belangrijkste grenswaarden zijn afgedekt.",Backlog,,high,,Ochtendcheck-in,,,"release:r1, epic:ochtendcheckin, type:qa",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Datamodel voor activiteiten implementeren,"Implementeer tabellen en seed-data voor activiteiten, categorieen en skip-redenen.
## Context
- Bron backlog-ID: `ST-301`
- Epic / project: `Dagplanning`
- Fase: `Release 1`
- Afhankelijk van: `EPIC-03`
## Definition of done
Migraties en seed-data voor categorieen en skip-redenen zijn aanwezig.",Backlog,,high,,Dagplanning,,,"release:r1, epic:dagplanning, type:build",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Planningformulier bouwen,"Bouw het formulier voor naam, categorie, duur, impact en prioriteit.
## Context
- Bron backlog-ID: `ST-302`
- Epic / project: `Dagplanning`
- Fase: `Release 1`
- Afhankelijk van: `ST-301`
## Definition of done
Activiteit kan met naam, categorie, duur, impact en prioriteit worden aangemaakt.",Backlog,,high,,Dagplanning,,,"release:r1, epic:dagplanning, type:ui",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Autocomplete op eerdere activiteiten toevoegen,"Maak snelle herselectie van eerder gebruikte activiteiten mogelijk.
## Context
- Bron backlog-ID: `ST-303`
- Epic / project: `Dagplanning`
- Fase: `Release 1`
- Afhankelijk van: `ST-302`
## Definition of done
Veelgebruikte activiteiten zijn snel opnieuw te kiezen.",Backlog,,high,,Dagplanning,,,"release:r1, epic:dagplanning, type:ux",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,EnergyMeter en lopend totaal implementeren,"Toon het lopende totaal ten opzichte van het dagbudget.
## Context
- Bron backlog-ID: `ST-304`
- Epic / project: `Dagplanning`
- Fase: `Release 1`
- Afhankelijk van: `ST-302`
## Definition of done
Totaal update direct na elke wijziging.",Backlog,,high,,Dagplanning,,,"release:r1, epic:dagplanning, type:logic-ui",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Overschrijdingswaarschuwing toevoegen,"Toon een niet-blokkerende waarschuwing bij budgetoverschrijding.
## Context
- Bron backlog-ID: `ST-305`
- Epic / project: `Dagplanning`
- Fase: `Release 1`
- Afhankelijk van: `ST-304`
## Definition of done
Gebruiker krijgt feedback maar behoudt regie.",Backlog,,high,,Dagplanning,,,"release:r1, epic:dagplanning, type:ux",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,"Statusflows voor uitgevoerd, geskipt en aangepast bouwen","Implementeer de drie kernstatussen voor activiteiten.
## Context
- Bron backlog-ID: `ST-401`
- Epic / project: `Evaluatie en dagoverzicht`
- Fase: `Release 1`
- Afhankelijk van: `EPIC-04`
## Definition of done
Alle drie de statussen worden correct opgeslagen.",Backlog,,high,,Evaluatie en dagoverzicht,,,"release:r1, epic:evaluatie, type:build",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Evaluatievelden toevoegen,"Voeg contextuele velden toe voor werkelijke duur, fatigue en skip-reden.
## Context
- Bron backlog-ID: `ST-402`
- Epic / project: `Evaluatie en dagoverzicht`
- Fase: `Release 1`
- Afhankelijk van: `ST-401`
## Definition of done
Contextuele velden verschijnen passend per status.",Backlog,,high,,Evaluatie en dagoverzicht,,,"release:r1, epic:evaluatie, type:ui",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Ongeplande activiteiten ondersteunen,"Maak het mogelijk een ongeplande activiteit toe te voegen en mee te tellen.
## Context
- Bron backlog-ID: `ST-403`
- Epic / project: `Evaluatie en dagoverzicht`
- Fase: `Release 1`
- Afhankelijk van: `ST-401`
## Definition of done
Ongeplande activiteit telt mee in werkelijke totalen.",Backlog,,high,,Evaluatie en dagoverzicht,,,"release:r1, epic:evaluatie, type:build",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Dagoverzicht bouwen,"Bouw het overzicht met gepland versus uitgevoerd en statusverdeling.
## Context
- Bron backlog-ID: `ST-404`
- Epic / project: `Evaluatie en dagoverzicht`
- Fase: `Release 1`
- Afhankelijk van: `ST-401`
## Definition of done
Gepland versus uitgevoerd en statusverdeling zijn zichtbaar.",Backlog,,high,,Evaluatie en dagoverzicht,,,"release:r1, epic:evaluatie, type:ui",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Dagaggregaties server-side implementeren,"Bereken dagtotalen en samenvatting server-side.
## Context
- Bron backlog-ID: `ST-405`
- Epic / project: `Evaluatie en dagoverzicht`
- Fase: `Release 1`
- Afhankelijk van: `ST-404`
## Definition of done
Dagtotalen blijven consistent met individuele records.",Backlog,,high,,Evaluatie en dagoverzicht,,,"release:r1, epic:evaluatie, type:logic",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Weekoverzichtspagina bouwen,"Bouw de pagina voor weekterugblik.
## Context
- Bron backlog-ID: `ST-501`
- Epic / project: `Weekoverzicht en inzichten`
- Fase: `Release 1`
- Afhankelijk van: `EPIC-05`
## Definition of done
Gebruiker kan per week terugkijken.",Backlog,,medium,,Weekoverzicht en inzichten,,,"release:r1, epic:weekoverzicht, type:ui",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Weekaggregaties bouwen,"Bereken gemiddelde energie en budget-adherence per week.
## Context
- Bron backlog-ID: `ST-502`
- Epic / project: `Weekoverzicht en inzichten`
- Fase: `Release 1`
- Afhankelijk van: `ST-501`
## Definition of done
Gemiddelde energie en budget-adherence zijn herleidbaar en testbaar.",Backlog,,medium,,Weekoverzicht en inzichten,,,"release:r1, epic:weekoverzicht, type:logic",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Skip-patronen zichtbaar maken,"Toon patronen rond skip-redenen en terugkerende activiteiten.
## Context
- Bron backlog-ID: `ST-503`
- Epic / project: `Weekoverzicht en inzichten`
- Fase: `Release 1`
- Afhankelijk van: `ST-502`
## Definition of done
Patronen worden alleen bij voldoende data getoond.",Backlog,,medium,,Weekoverzicht en inzichten,,,"release:r1, epic:weekoverzicht, type:logic-ui",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Insightregels met datadrempels definiëren,"Leg guardrails vast voor het tonen van patronen.
## Context
- Bron backlog-ID: `ST-504`
- Epic / project: `Weekoverzicht en inzichten`
- Fase: `Release 1`
- Afhankelijk van: `ST-502`
## Definition of done
Geen patroonclaim zonder guardrails.",Backlog,,medium,,Weekoverzicht en inzichten,,,"release:r1, epic:weekoverzicht, type:safety-logic",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Insightcopy toetsen op niet-medische formulering,"Controleer alle inzichtteksten op wellness-positionering.
## Context
- Bron backlog-ID: `ST-505`
- Epic / project: `Weekoverzicht en inzichten`
- Fase: `Release 1`
- Afhankelijk van: `ST-504`
## Definition of done
Alle teksten blijven binnen wellness-positionering.",Backlog,,medium,,Weekoverzicht en inzichten,,,"release:r1, epic:weekoverzicht, type:content",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,ReflectionCheckIn-model en flow implementeren,"Implementeer model en basisflow voor reflectie na een zwaardere dag.
## Context
- Bron backlog-ID: `ST-601`
- Epic / project: `Reflectie en reminders`
- Fase: `Release 1`
- Afhankelijk van: `EPIC-05`
## Definition of done
Reflecties kunnen aan eerdere dagen gekoppeld worden.",Backlog,,medium,,Reflectie en reminders,,,"release:r1, epic:reflectie, type:build",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Joblogica voor T+1/T+2 prompts bouwen,"Bepaal server-side welke gebruikers een reflectieprompt moeten zien.
## Context
- Bron backlog-ID: `ST-602`
- Epic / project: `Reflectie en reminders`
- Fase: `Release 1`
- Afhankelijk van: `ST-601`
## Definition of done
Prompts worden niet dubbel of willekeurig aangemaakt.",Backlog,,medium,,Reflectie en reminders,,,"release:r1, epic:reflectie, type:logic-ops",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Instellingsoptie voor reflectieprompts toevoegen,"Maak opt-in beheerbaar vanuit instellingen.
## Context
- Bron backlog-ID: `ST-603`
- Epic / project: `Reflectie en reminders`
- Fase: `Release 1`
- Afhankelijk van: `ST-104`
## Definition of done
Gebruiker beheert opt-in zelfstandig.",Backlog,,medium,,Reflectie en reminders,,,"release:r1, epic:reflectie, type:build",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Korte reflectie-UI bouwen,"Bouw een lichte, niet-medische reflectieprompt.
## Context
- Bron backlog-ID: `ST-604`
- Epic / project: `Reflectie en reminders`
- Fase: `Release 1`
- Afhankelijk van: `ST-602`
## Definition of done
Prompt voelt licht en niet medisch.",Backlog,,medium,,Reflectie en reminders,,,"release:r1, epic:reflectie, type:ui",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Rate limiting toevoegen,"Bescherm kritieke auth- en mutatieroutes tegen misbruik.
## Context
- Bron backlog-ID: `ST-701`
- Epic / project: `Security en operations`
- Fase: `Release 1`
- Afhankelijk van: `EPIC-02`
## Definition of done
Kritieke auth- en mutatieroutes zijn beschermd.",Backlog,,high,,Security en operations,,,"release:r1, epic:security-ops, type:security",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Logging voor fouten en kernmutaties inrichten,"Log fouten, loginproblemen en belangrijke mutaties centraal.
## Context
- Bron backlog-ID: `ST-702`
- Epic / project: `Security en operations`
- Fase: `Release 1`
- Afhankelijk van: `EPIC-03,EPIC-04,EPIC-05`
## Definition of done
Kerngebeurtenissen zijn herleidbaar.",Backlog,,high,,Security en operations,,,"release:r1, epic:security-ops, type:ops",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Back-up en herstelstrategie documenteren en testen,"Werk het restore-pad uit en valideer het.
## Context
- Bron backlog-ID: `ST-703`
- Epic / project: `Security en operations`
- Fase: `Release 1`
- Afhankelijk van: `EPIC-01`
## Definition of done
Restore-pad is aantoonbaar gevalideerd.",Backlog,,high,,Security en operations,,,"release:r1, epic:security-ops, type:ops",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Secrets- en environmentbeheer formaliseren,"Leg veilig beheer van secrets en omgevingen vast voor Vercel en Supabase.
## Context
- Bron backlog-ID: `ST-704`
- Epic / project: `Security en operations`
- Fase: `Release 1`
- Afhankelijk van: `EPIC-01`
## Definition of done
Geen secrets in code of onveilige configuratie.",Backlog,,high,,Security en operations,,,"release:r1, epic:security-ops, type:security-ops",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,RLS-policy tests toevoegen,"Test aantoonbaar dat owner-only toegang technisch afgedwongen is.
## Context
- Bron backlog-ID: `ST-705`
- Epic / project: `Security en operations`
- Fase: `Release 1`
- Afhankelijk van: `ST-105`
## Definition of done
Owner-only model is aantoonbaar afgedwongen.",Backlog,,high,,Security en operations,,,"release:r1, epic:security-ops, type:qa-security",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Kernflows handmatig testen,"Voer end-to-end handmatige tests uit op mobiel en desktop.
## Context
- Bron backlog-ID: `ST-801`
- Epic / project: `Launch-readiness`
- Fase: `Release 1`
- Afhankelijk van: `EPIC-05,EPIC-06,EPIC-07`
## Definition of done
Belangrijkste user journeys zijn geverifieerd.",Backlog,,high,,Launch-readiness,,,"release:r1, epic:launch, type:qa",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Accessibility check uitvoeren,"Controleer touch targets, contrast en reduced motion.
## Context
- Bron backlog-ID: `ST-802`
- Epic / project: `Launch-readiness`
- Fase: `Release 1`
- Afhankelijk van: `EPIC-05`
## Definition of done
Touch targets, contrast en reduced motion zijn gecontroleerd.",Backlog,,high,,Launch-readiness,,,"release:r1, epic:launch, type:qa-ux",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Copy review doen,"Controleer onboarding, dashboardteksten en inzichten op wellness-copy.
## Context
- Bron backlog-ID: `ST-803`
- Epic / project: `Launch-readiness`
- Fase: `Release 1`
- Afhankelijk van: `EPIC-06`
## Definition of done
Geen medische of zorgdossier-taal in release 1.",Backlog,,high,,Launch-readiness,,,"release:r1, epic:launch, type:content-safety",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,DPIA-input en datacatalogus afronden,"Rond privacyartefacten af op basis van de werkelijke MVP-scope.
## Context
- Bron backlog-ID: `ST-804`
- Epic / project: `Launch-readiness`
- Fase: `Release 1`
- Afhankelijk van: `EPIC-08`
## Definition of done
Pre-launch privacyartefacten zijn gereed.",Backlog,,high,,Launch-readiness,,,"release:r1, epic:launch, type:privacy",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
,Inspannings Monitor,Go-live checklist opstellen,"Maak een checklist voor launch, rollback, monitoring en incidentrespons.
## Context
- Bron backlog-ID: `ST-805`
- Epic / project: `Launch-readiness`
- Fase: `Release 1`
- Afhankelijk van: `EPIC-08`
## Definition of done
Team weet hoe launch en eerste incidentrespons verloopt.",Backlog,,high,,Launch-readiness,,,"release:r1, epic:launch, type:ops",,,,,2026-04-17T00:00:00Z,,,,,,,,,Release 1 MVP,,,
1 ID Team Title Description Status Estimate Priority Project ID Project Creator Assignee Labels Cycle Number Cycle Name Cycle Start Cycle End Created Updated Started Triaged Completed Canceled Archived Due Date Parent issue Initiatives Project Milestone ID Project Milestone SLA Status
2 Inspannings Monitor Next.js projectbasis opzetten Zet de projectbasis op met TypeScript en de gekozen stylingaanpak. ## Context - Bron backlog-ID: `ST-001` - Epic / project: `Fundament` - Fase: `Release 1` - Afhankelijk van: `EPIC-01` ## Definition of done Project start lokaal en in preview zonder handmatige workarounds. Backlog high Fundament release:r1, epic:fundament, type:build 2026-04-17T00:00:00Z Release 1 MVP
3 Inspannings Monitor Omgevingen definiëren Richt development, preview en production technisch in. ## Context - Bron backlog-ID: `ST-002` - Epic / project: `Fundament` - Fase: `Release 1` - Afhankelijk van: `ST-001` ## Definition of done Development, preview en production zijn technisch ingericht. Backlog high Fundament release:r1, epic:fundament, type:ops 2026-04-17T00:00:00Z Release 1 MVP
4 Inspannings Monitor Component foundation neerzetten Bouw herbruikbare basiscomponenten voor formulieren, kaarten, knoppen en meldingen. ## Context - Bron backlog-ID: `ST-003` - Epic / project: `Fundament` - Fase: `Release 1` - Afhankelijk van: `ST-001` ## Definition of done Herbruikbare basiscomponenten zijn mobiel bruikbaar. Backlog high Fundament release:r1, epic:fundament, type:ui 2026-04-17T00:00:00Z Release 1 MVP
5 Inspannings Monitor Foutafhandeling en lege staten ontwerpen Ontwerp en implementeer lege staten en bruikbare foutfeedback. ## Context - Bron backlog-ID: `ST-004` - Epic / project: `Fundament` - Fase: `Release 1` - Afhankelijk van: `ST-001` ## Definition of done Gebruiker krijgt bruikbare feedback bij lege of foutieve situaties. Backlog high Fundament release:r1, epic:fundament, type:ux 2026-04-17T00:00:00Z Release 1 MVP
6 Inspannings Monitor Supabase Auth integreren Integreer Supabase Auth en de sessieflow in de app. ## Context - Bron backlog-ID: `ST-101` - Epic / project: `Auth en profiel` - Fase: `Release 1` - Afhankelijk van: `EPIC-01` ## Definition of done Gebruiker kan inloggen en beveiligde routes gebruiken. Backlog high Auth en profiel release:r1, epic:auth-profiel, type:build 2026-04-17T00:00:00Z Release 1 MVP
7 Inspannings Monitor Profile- en UserSettings-model implementeren Implementeer profiel- en settingsmodellen per gebruiker. ## Context - Bron backlog-ID: `ST-102` - Epic / project: `Auth en profiel` - Fase: `Release 1` - Afhankelijk van: `ST-101` ## Definition of done Profiel en instellingen zijn per gebruiker beschikbaar. Backlog high Auth en profiel release:r1, epic:auth-profiel, type:build 2026-04-17T00:00:00Z Release 1 MVP
8 Inspannings Monitor Onboardingflow bouwen Bouw een onboarding van maximaal drie schermen. ## Context - Bron backlog-ID: `ST-103` - Epic / project: `Auth en profiel` - Fase: `Release 1` - Afhankelijk van: `ST-101` ## Definition of done Nieuwe gebruiker begrijpt schaal, positionering en basisinstellingen. Backlog high Auth en profiel release:r1, epic:auth-profiel, type:ux 2026-04-17T00:00:00Z Release 1 MVP
9 Inspannings Monitor Settingsscherm bouwen Bouw instellingen voor taal, timezone, reminders en zichtbaarheid van punten. ## Context - Bron backlog-ID: `ST-104` - Epic / project: `Auth en profiel` - Fase: `Release 1` - Afhankelijk van: `ST-102` ## Definition of done Taal, timezone, reminders en zichtbaarheid van punten zijn persistent. Backlog high Auth en profiel release:r1, epic:auth-profiel, type:build 2026-04-17T00:00:00Z Release 1 MVP
10 Inspannings Monitor RLS-basispolicies inrichten Richt owner-only RLS-policies in voor profiel en instellingen. ## Context - Bron backlog-ID: `ST-105` - Epic / project: `Auth en profiel` - Fase: `Release 1` - Afhankelijk van: `ST-101` ## Definition of done Gebruiker kan uitsluitend eigen profiel en settings lezen of wijzigen. Backlog high Auth en profiel release:r1, epic:auth-profiel, type:security 2026-04-17T00:00:00Z Release 1 MVP
11 Inspannings Monitor EnergySlider en SleepQualityInput bouwen Bouw de invoercomponenten voor energiescore en slaapkwaliteit. ## Context - Bron backlog-ID: `ST-201` - Epic / project: `Ochtendcheck-in` - Fase: `Release 1` - Afhankelijk van: `EPIC-02` ## Definition of done Check-in kan mobiel comfortabel worden ingevuld. Backlog high Ochtendcheck-in release:r1, epic:ochtendcheckin, type:ui 2026-04-17T00:00:00Z Release 1 MVP
12 Inspannings Monitor Server action voor createMorningCheckIn Implementeer de server action voor het opslaan van de ochtendcheck-in. ## Context - Bron backlog-ID: `ST-202` - Epic / project: `Ochtendcheck-in` - Fase: `Release 1` - Afhankelijk van: `ST-201` ## Definition of done Check-in wordt opgeslagen met juiste validatie. Backlog high Ochtendcheck-in release:r1, epic:ochtendcheckin, type:build 2026-04-17T00:00:00Z Release 1 MVP
13 Inspannings Monitor Budgetlogica implementeren Bouw mapping van score naar energy level en dagbudget. ## Context - Bron backlog-ID: `ST-203` - Epic / project: `Ochtendcheck-in` - Fase: `Release 1` - Afhankelijk van: `ST-202` ## Definition of done Score mapping en budgetberekening zijn consistent en testbaar. Backlog high Ochtendcheck-in release:r1, epic:ochtendcheckin, type:logic 2026-04-17T00:00:00Z Release 1 MVP
14 Inspannings Monitor Check-instatus op dashboard tonen Toon direct score, niveau en budget op het dashboard. ## Context - Bron backlog-ID: `ST-204` - Epic / project: `Ochtendcheck-in` - Fase: `Release 1` - Afhankelijk van: `ST-202` ## Definition of done Gebruiker ziet direct score, niveau en budget. Backlog high Ochtendcheck-in release:r1, epic:ochtendcheckin, type:ui 2026-04-17T00:00:00Z Release 1 MVP
15 Inspannings Monitor Unit tests voor score- en budgetmapping Voeg tests toe voor grenswaarden en budgetberekening. ## Context - Bron backlog-ID: `ST-205` - Epic / project: `Ochtendcheck-in` - Fase: `Release 1` - Afhankelijk van: `ST-203` ## Definition of done Belangrijkste grenswaarden zijn afgedekt. Backlog high Ochtendcheck-in release:r1, epic:ochtendcheckin, type:qa 2026-04-17T00:00:00Z Release 1 MVP
16 Inspannings Monitor Datamodel voor activiteiten implementeren Implementeer tabellen en seed-data voor activiteiten, categorieen en skip-redenen. ## Context - Bron backlog-ID: `ST-301` - Epic / project: `Dagplanning` - Fase: `Release 1` - Afhankelijk van: `EPIC-03` ## Definition of done Migraties en seed-data voor categorieen en skip-redenen zijn aanwezig. Backlog high Dagplanning release:r1, epic:dagplanning, type:build 2026-04-17T00:00:00Z Release 1 MVP
17 Inspannings Monitor Planningformulier bouwen Bouw het formulier voor naam, categorie, duur, impact en prioriteit. ## Context - Bron backlog-ID: `ST-302` - Epic / project: `Dagplanning` - Fase: `Release 1` - Afhankelijk van: `ST-301` ## Definition of done Activiteit kan met naam, categorie, duur, impact en prioriteit worden aangemaakt. Backlog high Dagplanning release:r1, epic:dagplanning, type:ui 2026-04-17T00:00:00Z Release 1 MVP
18 Inspannings Monitor Autocomplete op eerdere activiteiten toevoegen Maak snelle herselectie van eerder gebruikte activiteiten mogelijk. ## Context - Bron backlog-ID: `ST-303` - Epic / project: `Dagplanning` - Fase: `Release 1` - Afhankelijk van: `ST-302` ## Definition of done Veelgebruikte activiteiten zijn snel opnieuw te kiezen. Backlog high Dagplanning release:r1, epic:dagplanning, type:ux 2026-04-17T00:00:00Z Release 1 MVP
19 Inspannings Monitor EnergyMeter en lopend totaal implementeren Toon het lopende totaal ten opzichte van het dagbudget. ## Context - Bron backlog-ID: `ST-304` - Epic / project: `Dagplanning` - Fase: `Release 1` - Afhankelijk van: `ST-302` ## Definition of done Totaal update direct na elke wijziging. Backlog high Dagplanning release:r1, epic:dagplanning, type:logic-ui 2026-04-17T00:00:00Z Release 1 MVP
20 Inspannings Monitor Overschrijdingswaarschuwing toevoegen Toon een niet-blokkerende waarschuwing bij budgetoverschrijding. ## Context - Bron backlog-ID: `ST-305` - Epic / project: `Dagplanning` - Fase: `Release 1` - Afhankelijk van: `ST-304` ## Definition of done Gebruiker krijgt feedback maar behoudt regie. Backlog high Dagplanning release:r1, epic:dagplanning, type:ux 2026-04-17T00:00:00Z Release 1 MVP
21 Inspannings Monitor Statusflows voor uitgevoerd, geskipt en aangepast bouwen Implementeer de drie kernstatussen voor activiteiten. ## Context - Bron backlog-ID: `ST-401` - Epic / project: `Evaluatie en dagoverzicht` - Fase: `Release 1` - Afhankelijk van: `EPIC-04` ## Definition of done Alle drie de statussen worden correct opgeslagen. Backlog high Evaluatie en dagoverzicht release:r1, epic:evaluatie, type:build 2026-04-17T00:00:00Z Release 1 MVP
22 Inspannings Monitor Evaluatievelden toevoegen Voeg contextuele velden toe voor werkelijke duur, fatigue en skip-reden. ## Context - Bron backlog-ID: `ST-402` - Epic / project: `Evaluatie en dagoverzicht` - Fase: `Release 1` - Afhankelijk van: `ST-401` ## Definition of done Contextuele velden verschijnen passend per status. Backlog high Evaluatie en dagoverzicht release:r1, epic:evaluatie, type:ui 2026-04-17T00:00:00Z Release 1 MVP
23 Inspannings Monitor Ongeplande activiteiten ondersteunen Maak het mogelijk een ongeplande activiteit toe te voegen en mee te tellen. ## Context - Bron backlog-ID: `ST-403` - Epic / project: `Evaluatie en dagoverzicht` - Fase: `Release 1` - Afhankelijk van: `ST-401` ## Definition of done Ongeplande activiteit telt mee in werkelijke totalen. Backlog high Evaluatie en dagoverzicht release:r1, epic:evaluatie, type:build 2026-04-17T00:00:00Z Release 1 MVP
24 Inspannings Monitor Dagoverzicht bouwen Bouw het overzicht met gepland versus uitgevoerd en statusverdeling. ## Context - Bron backlog-ID: `ST-404` - Epic / project: `Evaluatie en dagoverzicht` - Fase: `Release 1` - Afhankelijk van: `ST-401` ## Definition of done Gepland versus uitgevoerd en statusverdeling zijn zichtbaar. Backlog high Evaluatie en dagoverzicht release:r1, epic:evaluatie, type:ui 2026-04-17T00:00:00Z Release 1 MVP
25 Inspannings Monitor Dagaggregaties server-side implementeren Bereken dagtotalen en samenvatting server-side. ## Context - Bron backlog-ID: `ST-405` - Epic / project: `Evaluatie en dagoverzicht` - Fase: `Release 1` - Afhankelijk van: `ST-404` ## Definition of done Dagtotalen blijven consistent met individuele records. Backlog high Evaluatie en dagoverzicht release:r1, epic:evaluatie, type:logic 2026-04-17T00:00:00Z Release 1 MVP
26 Inspannings Monitor Weekoverzichtspagina bouwen Bouw de pagina voor weekterugblik. ## Context - Bron backlog-ID: `ST-501` - Epic / project: `Weekoverzicht en inzichten` - Fase: `Release 1` - Afhankelijk van: `EPIC-05` ## Definition of done Gebruiker kan per week terugkijken. Backlog medium Weekoverzicht en inzichten release:r1, epic:weekoverzicht, type:ui 2026-04-17T00:00:00Z Release 1 MVP
27 Inspannings Monitor Weekaggregaties bouwen Bereken gemiddelde energie en budget-adherence per week. ## Context - Bron backlog-ID: `ST-502` - Epic / project: `Weekoverzicht en inzichten` - Fase: `Release 1` - Afhankelijk van: `ST-501` ## Definition of done Gemiddelde energie en budget-adherence zijn herleidbaar en testbaar. Backlog medium Weekoverzicht en inzichten release:r1, epic:weekoverzicht, type:logic 2026-04-17T00:00:00Z Release 1 MVP
28 Inspannings Monitor Skip-patronen zichtbaar maken Toon patronen rond skip-redenen en terugkerende activiteiten. ## Context - Bron backlog-ID: `ST-503` - Epic / project: `Weekoverzicht en inzichten` - Fase: `Release 1` - Afhankelijk van: `ST-502` ## Definition of done Patronen worden alleen bij voldoende data getoond. Backlog medium Weekoverzicht en inzichten release:r1, epic:weekoverzicht, type:logic-ui 2026-04-17T00:00:00Z Release 1 MVP
29 Inspannings Monitor Insightregels met datadrempels definiëren Leg guardrails vast voor het tonen van patronen. ## Context - Bron backlog-ID: `ST-504` - Epic / project: `Weekoverzicht en inzichten` - Fase: `Release 1` - Afhankelijk van: `ST-502` ## Definition of done Geen patroonclaim zonder guardrails. Backlog medium Weekoverzicht en inzichten release:r1, epic:weekoverzicht, type:safety-logic 2026-04-17T00:00:00Z Release 1 MVP
30 Inspannings Monitor Insightcopy toetsen op niet-medische formulering Controleer alle inzichtteksten op wellness-positionering. ## Context - Bron backlog-ID: `ST-505` - Epic / project: `Weekoverzicht en inzichten` - Fase: `Release 1` - Afhankelijk van: `ST-504` ## Definition of done Alle teksten blijven binnen wellness-positionering. Backlog medium Weekoverzicht en inzichten release:r1, epic:weekoverzicht, type:content 2026-04-17T00:00:00Z Release 1 MVP
31 Inspannings Monitor ReflectionCheckIn-model en flow implementeren Implementeer model en basisflow voor reflectie na een zwaardere dag. ## Context - Bron backlog-ID: `ST-601` - Epic / project: `Reflectie en reminders` - Fase: `Release 1` - Afhankelijk van: `EPIC-05` ## Definition of done Reflecties kunnen aan eerdere dagen gekoppeld worden. Backlog medium Reflectie en reminders release:r1, epic:reflectie, type:build 2026-04-17T00:00:00Z Release 1 MVP
32 Inspannings Monitor Joblogica voor T+1/T+2 prompts bouwen Bepaal server-side welke gebruikers een reflectieprompt moeten zien. ## Context - Bron backlog-ID: `ST-602` - Epic / project: `Reflectie en reminders` - Fase: `Release 1` - Afhankelijk van: `ST-601` ## Definition of done Prompts worden niet dubbel of willekeurig aangemaakt. Backlog medium Reflectie en reminders release:r1, epic:reflectie, type:logic-ops 2026-04-17T00:00:00Z Release 1 MVP
33 Inspannings Monitor Instellingsoptie voor reflectieprompts toevoegen Maak opt-in beheerbaar vanuit instellingen. ## Context - Bron backlog-ID: `ST-603` - Epic / project: `Reflectie en reminders` - Fase: `Release 1` - Afhankelijk van: `ST-104` ## Definition of done Gebruiker beheert opt-in zelfstandig. Backlog medium Reflectie en reminders release:r1, epic:reflectie, type:build 2026-04-17T00:00:00Z Release 1 MVP
34 Inspannings Monitor Korte reflectie-UI bouwen Bouw een lichte, niet-medische reflectieprompt. ## Context - Bron backlog-ID: `ST-604` - Epic / project: `Reflectie en reminders` - Fase: `Release 1` - Afhankelijk van: `ST-602` ## Definition of done Prompt voelt licht en niet medisch. Backlog medium Reflectie en reminders release:r1, epic:reflectie, type:ui 2026-04-17T00:00:00Z Release 1 MVP
35 Inspannings Monitor Rate limiting toevoegen Bescherm kritieke auth- en mutatieroutes tegen misbruik. ## Context - Bron backlog-ID: `ST-701` - Epic / project: `Security en operations` - Fase: `Release 1` - Afhankelijk van: `EPIC-02` ## Definition of done Kritieke auth- en mutatieroutes zijn beschermd. Backlog high Security en operations release:r1, epic:security-ops, type:security 2026-04-17T00:00:00Z Release 1 MVP
36 Inspannings Monitor Logging voor fouten en kernmutaties inrichten Log fouten, loginproblemen en belangrijke mutaties centraal. ## Context - Bron backlog-ID: `ST-702` - Epic / project: `Security en operations` - Fase: `Release 1` - Afhankelijk van: `EPIC-03,EPIC-04,EPIC-05` ## Definition of done Kerngebeurtenissen zijn herleidbaar. Backlog high Security en operations release:r1, epic:security-ops, type:ops 2026-04-17T00:00:00Z Release 1 MVP
37 Inspannings Monitor Back-up en herstelstrategie documenteren en testen Werk het restore-pad uit en valideer het. ## Context - Bron backlog-ID: `ST-703` - Epic / project: `Security en operations` - Fase: `Release 1` - Afhankelijk van: `EPIC-01` ## Definition of done Restore-pad is aantoonbaar gevalideerd. Backlog high Security en operations release:r1, epic:security-ops, type:ops 2026-04-17T00:00:00Z Release 1 MVP
38 Inspannings Monitor Secrets- en environmentbeheer formaliseren Leg veilig beheer van secrets en omgevingen vast voor Vercel en Supabase. ## Context - Bron backlog-ID: `ST-704` - Epic / project: `Security en operations` - Fase: `Release 1` - Afhankelijk van: `EPIC-01` ## Definition of done Geen secrets in code of onveilige configuratie. Backlog high Security en operations release:r1, epic:security-ops, type:security-ops 2026-04-17T00:00:00Z Release 1 MVP
39 Inspannings Monitor RLS-policy tests toevoegen Test aantoonbaar dat owner-only toegang technisch afgedwongen is. ## Context - Bron backlog-ID: `ST-705` - Epic / project: `Security en operations` - Fase: `Release 1` - Afhankelijk van: `ST-105` ## Definition of done Owner-only model is aantoonbaar afgedwongen. Backlog high Security en operations release:r1, epic:security-ops, type:qa-security 2026-04-17T00:00:00Z Release 1 MVP
40 Inspannings Monitor Kernflows handmatig testen Voer end-to-end handmatige tests uit op mobiel en desktop. ## Context - Bron backlog-ID: `ST-801` - Epic / project: `Launch-readiness` - Fase: `Release 1` - Afhankelijk van: `EPIC-05,EPIC-06,EPIC-07` ## Definition of done Belangrijkste user journeys zijn geverifieerd. Backlog high Launch-readiness release:r1, epic:launch, type:qa 2026-04-17T00:00:00Z Release 1 MVP
41 Inspannings Monitor Accessibility check uitvoeren Controleer touch targets, contrast en reduced motion. ## Context - Bron backlog-ID: `ST-802` - Epic / project: `Launch-readiness` - Fase: `Release 1` - Afhankelijk van: `EPIC-05` ## Definition of done Touch targets, contrast en reduced motion zijn gecontroleerd. Backlog high Launch-readiness release:r1, epic:launch, type:qa-ux 2026-04-17T00:00:00Z Release 1 MVP
42 Inspannings Monitor Copy review doen Controleer onboarding, dashboardteksten en inzichten op wellness-copy. ## Context - Bron backlog-ID: `ST-803` - Epic / project: `Launch-readiness` - Fase: `Release 1` - Afhankelijk van: `EPIC-06` ## Definition of done Geen medische of zorgdossier-taal in release 1. Backlog high Launch-readiness release:r1, epic:launch, type:content-safety 2026-04-17T00:00:00Z Release 1 MVP
43 Inspannings Monitor DPIA-input en datacatalogus afronden Rond privacyartefacten af op basis van de werkelijke MVP-scope. ## Context - Bron backlog-ID: `ST-804` - Epic / project: `Launch-readiness` - Fase: `Release 1` - Afhankelijk van: `EPIC-08` ## Definition of done Pre-launch privacyartefacten zijn gereed. Backlog high Launch-readiness release:r1, epic:launch, type:privacy 2026-04-17T00:00:00Z Release 1 MVP
44 Inspannings Monitor Go-live checklist opstellen Maak een checklist voor launch, rollback, monitoring en incidentrespons. ## Context - Bron backlog-ID: `ST-805` - Epic / project: `Launch-readiness` - Fase: `Release 1` - Afhankelijk van: `EPIC-08` ## Definition of done Team weet hoe launch en eerste incidentrespons verloopt. Backlog high Launch-readiness release:r1, epic:launch, type:ops 2026-04-17T00:00:00Z Release 1 MVP

View file

@ -0,0 +1,10 @@
Name,Summary,Status,Milestones,Creator,Lead,Members,Created At,Started At,Target Date,Completed At,Canceled At,Teams,Initiatives
Fundament,"Leg de technische basis voor release 1 met projectsetup, omgevingen, UI-basis en foutafhandeling.",Planned,,,,,2026-04-17T00:00:00Z,,,,,Inspannings Monitor,Release 1 MVP
Auth en profiel,"Implementeer accounttoegang, profieldata, onboarding en basisinstellingen per gebruiker.",Planned,,,,,2026-04-17T00:00:00Z,,,,,Inspannings Monitor,Release 1 MVP
Ochtendcheck-in,"Bouw de ochtendcheck-in met energiescore, slaapkwaliteit en automatische budgetafleiding.",Planned,,,,,2026-04-17T00:00:00Z,,,,,Inspannings Monitor,Release 1 MVP
Dagplanning,"Maak plannen van activiteiten mogelijk met budgetfeedback, energie-impact en prioriteit.",Planned,,,,,2026-04-17T00:00:00Z,,,,,Inspannings Monitor,Release 1 MVP
Evaluatie en dagoverzicht,Maak evaluatie van activiteiten en een dagelijks overzicht van gepland versus uitgevoerd mogelijk.,Planned,,,,,2026-04-17T00:00:00Z,,,,,Inspannings Monitor,Release 1 MVP
Weekoverzicht en inzichten,"Voeg weekterugblik, eenvoudige aggregaties en veilige patroonweergave toe zonder medische claims.",Backlog,,,,,2026-04-17T00:00:00Z,,,,,Inspannings Monitor,Release 1 MVP
Reflectie en reminders,Voeg optionele T+1/T+2 reflectieprompts en lichte reminderlogica toe voor zwaardere dagen.,Backlog,,,,,2026-04-17T00:00:00Z,,,,,Inspannings Monitor,Release 1 MVP
Security en operations,"Borg logging, rate limiting, secrets, back-up en owner-only toegangscontrole voor echte gebruikersintroductie.",Planned,,,,,2026-04-17T00:00:00Z,,,,,Inspannings Monitor,Release 1 MVP
Launch-readiness,"Rond QA, copy review, accessibility checks, DPIA-input en go-live checks voor release 1 af.",Backlog,,,,,2026-04-17T00:00:00Z,,,,,Inspannings Monitor,Release 1 MVP
1 Name Summary Status Milestones Creator Lead Members Created At Started At Target Date Completed At Canceled At Teams Initiatives
2 Fundament Leg de technische basis voor release 1 met projectsetup, omgevingen, UI-basis en foutafhandeling. Planned 2026-04-17T00:00:00Z Inspannings Monitor Release 1 MVP
3 Auth en profiel Implementeer accounttoegang, profieldata, onboarding en basisinstellingen per gebruiker. Planned 2026-04-17T00:00:00Z Inspannings Monitor Release 1 MVP
4 Ochtendcheck-in Bouw de ochtendcheck-in met energiescore, slaapkwaliteit en automatische budgetafleiding. Planned 2026-04-17T00:00:00Z Inspannings Monitor Release 1 MVP
5 Dagplanning Maak plannen van activiteiten mogelijk met budgetfeedback, energie-impact en prioriteit. Planned 2026-04-17T00:00:00Z Inspannings Monitor Release 1 MVP
6 Evaluatie en dagoverzicht Maak evaluatie van activiteiten en een dagelijks overzicht van gepland versus uitgevoerd mogelijk. Planned 2026-04-17T00:00:00Z Inspannings Monitor Release 1 MVP
7 Weekoverzicht en inzichten Voeg weekterugblik, eenvoudige aggregaties en veilige patroonweergave toe zonder medische claims. Backlog 2026-04-17T00:00:00Z Inspannings Monitor Release 1 MVP
8 Reflectie en reminders Voeg optionele T+1/T+2 reflectieprompts en lichte reminderlogica toe voor zwaardere dagen. Backlog 2026-04-17T00:00:00Z Inspannings Monitor Release 1 MVP
9 Security en operations Borg logging, rate limiting, secrets, back-up en owner-only toegangscontrole voor echte gebruikersintroductie. Planned 2026-04-17T00:00:00Z Inspannings Monitor Release 1 MVP
10 Launch-readiness Rond QA, copy review, accessibility checks, DPIA-input en go-live checks voor release 1 af. Backlog 2026-04-17T00:00:00Z Inspannings Monitor Release 1 MVP

View file

@ -0,0 +1,121 @@
# Inspannings Monitor Linear Projects
Dit document geeft per `Linear Project` een aanbevolen naam, samenvatting, status en praktisch gebruik.
## Initiative
### Release 1 MVP
- Aanbevolen status: `Planned`
- Samenvatting: `Wellness-first MVP voor individuele gebruikers, met een lichte plan-doe-evalueer flow voor energiemanagement.`
- Doel: alle release-1 projecten samenbrengen onder één duidelijk productdoel
Volgens de actuele `Linear`-documentatie zijn initiatives workspace-breed, bedoeld om projecten te groeperen rond een organisatorisch doel, en hebben ze een lifecycle met `Planned`, `Active` en `Completed`. Voor jullie huidige fase is `Planned` de juiste startstatus.
## Projects
### 1. Fundament
- Aanbevolen status: `Planned`
- Samenvatting: `Leg de technische basis voor release 1 met projectsetup, omgevingen, UI-basis en foutafhandeling.`
- Waarom dit een project is:
- duidelijke uitkomst
- vroeg in de planning
- direct blokkerend voor alle andere projecten
### 2. Auth en profiel
- Aanbevolen status: `Planned`
- Samenvatting: `Implementeer accounttoegang, profieldata, onboarding en basisinstellingen per gebruiker.`
- Waarom dit een project is:
- eigen domein met duidelijke oplevering
- nodig voor alle persoonlijke flows
### 3. Ochtendcheck-in
- Aanbevolen status: `Planned`
- Samenvatting: `Bouw de ochtendcheck-in met energiescore, slaapkwaliteit en automatische budgetafleiding.`
- Waarom dit een project is:
- centrale start van de kerngebruikersreis
- duidelijke functionele grens
### 4. Dagplanning
- Aanbevolen status: `Planned`
- Samenvatting: `Maak plannen van activiteiten mogelijk met budgetfeedback, energie-impact en prioriteit.`
- Waarom dit een project is:
- aparte UX- en datamodelscope
- kern van de planfase
### 5. Evaluatie en dagoverzicht
- Aanbevolen status: `Planned`
- Samenvatting: `Maak evaluatie van activiteiten en een dagelijks overzicht van gepland versus uitgevoerd mogelijk.`
- Waarom dit een project is:
- sluit de kernloop functioneel af
- levert directe gebruikerswaarde op
### 6. Weekoverzicht en inzichten
- Aanbevolen status: `Backlog`
- Samenvatting: `Voeg weekterugblik, eenvoudige aggregaties en veilige patroonweergave toe zonder medische claims.`
- Waarom dit een project is:
- logisch vervolg op de basisflow
- minder blokkerend dan de eerste vijf projecten
### 7. Reflectie en reminders
- Aanbevolen status: `Backlog`
- Samenvatting: `Voeg optionele T+1/T+2 reflectieprompts en lichte reminderlogica toe voor zwaardere dagen.`
- Waarom dit een project is:
- waardevol, maar niet nodig om de eerste basisflow werkend te krijgen
- goed af te bakenen als apart project
### 8. Security en operations
- Aanbevolen status: `Planned`
- Samenvatting: `Borg logging, rate limiting, secrets, back-up en owner-only toegangscontrole voor echte gebruikersintroductie.`
- Waarom dit een project is:
- releasekritisch
- loopt parallel aan featurebouw
### 9. Launch-readiness
- Aanbevolen status: `Backlog`
- Samenvatting: `Rond QA, copy review, accessibility checks, DPIA-input en go-live checks voor release 1 af.`
- Waarom dit een project is:
- hoort als apart releaseproject zichtbaar te zijn
- wordt pas later actief, maar moet wel vroeg bestaan
## Aanbevolen praktische werkwijze in Linear
- Gebruik `Projects` voor deze 9 grotere werkstromen.
- Gebruik `Issues` voor de individuele stories.
- Gebruik voorlopig geen milestones.
- Gebruik voorlopig geen cycles.
- Zet een project pas op `In Progress` zodra er daadwerkelijk actief werk in loopt.
- Laat `Weekoverzicht en inzichten`, `Reflectie en reminders` en `Launch-readiness` aanvankelijk op `Backlog` staan.
## Aanbevolen eerste statusverdeling
### Start op `Planned`
- `Fundament`
- `Auth en profiel`
- `Ochtendcheck-in`
- `Dagplanning`
- `Evaluatie en dagoverzicht`
- `Security en operations`
### Start op `Backlog`
- `Weekoverzicht en inzichten`
- `Reflectie en reminders`
- `Launch-readiness`
## Bronnen
- [Linear Project status](https://linear.app/docs/project-status)
- [Linear Projects](https://linear.app/docs/projects)
- [Linear Project overview](https://linear.app/docs/project-overview)
- [Linear Initiatives](https://linear.app/docs/initiatives)

View file

@ -0,0 +1,112 @@
# Inspannings Monitor in Linear
Dit document vertaalt de huidige backlog en documentatieset naar een praktische `Linear`-inrichting.
## Waarom deze inrichting
Volgens de actuele `Linear`-documentatie is een workspace het hoogste niveau en beveelt Linear in de praktijk aan om per bedrijf één workspace te gebruiken. Ook is een issue in Linear altijd gekoppeld aan precies één team, terwijl projecten grotere eenheden van werk zijn met een duidelijke uitkomst en geplande afronding.
Voor `Inspannings Monitor` betekent dat: houd het in het begin eenvoudig en maak één team voor release 1.
## Aanbevolen structuur
### Workspace
- `Inspannings Monitor`
### Team
- `Inspannings Monitor`
Gebruik één top-level team voor release 1. Dat past goed bij het feit dat release 1 alleen voor individuele gebruikers is en dat de backlog nog niet over meerdere product- of engineeringteams verdeeld hoeft te worden.
### Initiative
- `Release 1 MVP`
Gebruik één initiative als overkoepelend kader voor de eerste release.
### Projects
Maak de huidige epics als `Projects` aan in Linear:
1. `Fundament`
2. `Auth en profiel`
3. `Ochtendcheck-in`
4. `Dagplanning`
5. `Evaluatie en dagoverzicht`
6. `Weekoverzicht en inzichten`
7. `Reflectie en reminders`
8. `Security en operations`
9. `Launch-readiness`
## Aanbevolen labels
Houd labels klein en functioneel:
- `release:r1`
- `type:build`
- `type:ui`
- `type:logic`
- `type:qa`
- `type:security`
- `type:ops`
- `type:ux`
- `type:content`
- `type:privacy`
- `epic:fundament`
- `epic:auth-profiel`
- `epic:ochtendcheckin`
- `epic:dagplanning`
- `epic:evaluatie`
- `epic:weekoverzicht`
- `epic:reflectie`
- `epic:security-ops`
- `epic:launch`
## Aanbevolen statusgebruik
Voor de eerste release zou ik de workflow simpel houden:
- `Backlog`
- `Todo`
- `In Progress`
- `Done`
- `Canceled`
Begin zonder extra workflowstappen zoals `In Review`, tenzij jullie daar direct echt behoefte aan hebben. Linear is sterk juist wanneer je niet te vroeg te veel proceslagen toevoegt.
## Hoe ik de backlog heb gemapt
- `Epics` uit onze backlog zijn gemapt naar `Projects` in Linear.
- `Stories` zijn gemapt naar `Issues`.
- `P0` is gemapt naar `high`.
- `P1` is gemapt naar `medium`.
- Alle issues starten in `Backlog`.
- Het labelpakket uit de bestaande backlog blijft behouden.
## Aanbevolen importaanpak
1. Maak in Linear eerst de workspace en het team aan.
2. Maak daarna handmatig de `Initiative` en de negen `Projects` aan.
3. Gebruik het gegenereerde bestand [inspannings-monitor-linear-import-issues.csv](./inspannings-monitor-linear-import-issues.csv).
4. Gebruik de importroute die Linear documenteert voor `Other`-bronnen / `Linear CSV` via hun importer/CLI.
5. Controleer na import of `Project` en `Initiatives` goed zijn overgekomen.
6. Als die velden niet automatisch gekoppeld blijken, kun je in Linear issues per `epic:*` label filteren en daarna in bulk aan het juiste project koppelen.
## Belangrijke noot over de CSV
De gegenereerde CSV volgt de actuele exportkoppen van Linear, zodat het formaat dicht op het eigen model van Linear ligt. De importdocumentatie noemt expliciet onder meer `Title`, `Description`, `Priority`, `Status`, `Assignee`, `Created`, `Completed`, `Labels` en `Estimate` als relevante velden voor een `Other`-import. Ik heb daarnaast ook `Team`, `Project` en `Initiatives` ingevuld op basis van Linears eigen exportstructuur. Daardoor is de CSV zo bruikbaar mogelijk, maar het blijft verstandig om na import even te verifiëren dat projectkoppelingen exact zijn overgekomen.
## Cycles
Ik zou `Cycles` nog niet meteen aanzetten. Eerst de basisflow goed krijgen, daarna pas time-boxing toevoegen. Linear ondersteunt cycles per team, maar voor deze eerste release levert een eenvoudige project- en issue-structuur waarschijnlijk meer rust op dan direct sprintdiscipline.
## Bestanden in deze map
- [inspannings-monitor-backlog.md](./inspannings-monitor-backlog.md)
- [inspannings-monitor-backlog.csv](./inspannings-monitor-backlog.csv)
- [inspannings-monitor-linear-import-issues.csv](./inspannings-monitor-linear-import-issues.csv)
- [inspannings-monitor-linear-projects.csv](./inspannings-monitor-linear-projects.csv)
- [inspannings-monitor-linear-projects.md](./inspannings-monitor-linear-projects.md)
- [generate_linear_backlog_assets.py](./generate_linear_backlog_assets.py)

File diff suppressed because it is too large Load diff