Demo-data: Holbæk Byskole¶
Demo-miljøet seedes af backend/scripts/seedDemoData.ts — et idempotent
script, der kører automatisk på boot når SEED_DB=1 (review-apps), og som
intet gør, hvis organisationen holbaek-byskole allerede findes.
Dataen følger ADR-001-modellen og overholder invarianten: antal aktive
opgaver == antal aktive grupper, hvilket asserteres af scriptets
indbyggede verifikation efter hvert seed.
Dokumenterne er ægte .docx-filer med fagligt indhold, genereret af
backend/scripts/generate-demo-docs.py (python-docx) og committet som
fixtures i backend/src/templates/demo/. Tekstanalysens citater er fra
H.C. Andersens „Den lille Pige med Svovlstikkerne" (1845, offentlig
ejendom).
Logins (demo-miljø — IKKE produktionskoder)¶
Alle har adgangskoden password123.
| Rolle | Login | Viser |
|---|---|---|
| Admin | admin@holbaekbyskole.dk |
Admin-dashboard, brugere, rapporter, alle hold |
| Lærer | karen@holbaekbyskole.dk |
Demoens hovedperson: 9.B Dansk + Billedkunst — help-flag, frist <24t, bedømt aflevering, afsluttet emne |
| Lærer | jonas@holbaekbyskole.dk |
7.A Matematik (Geometri/Figurer) + 8.B Kemi (planlagt gruppe) |
| Lærer | mette@holbaekbyskole.dk |
7.C/8.B Engelsk |
| Elev | viggo@holbaekbyskole.dk |
9.B — help-flag-gruppen Pixelpoeterne (kronik, frist <24t), Nordlys (tekstanalyse m. chat), låst Billedkunst-emne |
| Elev | liv@holbaekbyskole.dk |
9.B — bedømt tekstanalyse (Ordsmedene, karakter 10) |
| Elev | alma@holbaekbyskole.dk |
7.A — matematik-gruppedokument m. tabel og chat |
| Elev | clara@holbaekbyskole.dk |
8.B — medlem af den PLANLAGTE gruppe (usynlig indtil start) |
Øvrige elever: fornavn@holbaekbyskole.dk (24 elever i 7.A, 7.C, 8.B, 9.B).
Hvad demoen indeholder¶
Organisation: Holbæk Byskole — 1 admin, 3 lærere, 24 elever i 4 stamklasser. 5 fag: Dansk, Matematik, Engelsk, Billedkunst, Kemi.
Forløb og emner (2-3 forløb pr. lærer, ægte fagligt indhold):
| Forløb | Emne | Hold | Tilstand |
|---|---|---|---|
| Det Moderne Gennembrud | Tekstanalyse | 9.B Dansk | Ordsmedene bedømt (10) m. ægte feedback; Nordlys i gang m. chat over 3 dage |
| Kronik | Unges trivsel i en digital verden | 9.B Dansk | Frist <24t (rød badge), unik opgavetekst pr. gruppe (isShared=false); Pixelpoeterne har aktivt help-flag m. besked |
| Selvportræt med blandede teknikker | Procesbeskrivelse | 9.B Billedkunst | AFSLUTTET emne — alle dokumenter LOCKED (watch-only), bedømt 12, PDF/ZIP-eksport mulig |
| Geometri | Figurer | 7.A Matematik | Aktiv (+8 dage), 3 grupper (demo af Afslut-dialogens gruppeliste), gruppedokument m. definitioner/tabel, chat |
| Syrer og baser | Husholdningskemi — forsøgsrapport | 8.B Kemi | Aktiv (+12 dage); Reagensglasset er PLANLAGT (start om 3 dage — usynlig for elever) |
| My Hometown | Travel Guide: Holbæk | 7.C Engelsk | Aktiv (+6 dage), tidlig disposition |
| Short Stories | Reading Log | 8.B Engelsk | Aktiv (+14 dage), tom (gruppe uden dokumenter) |
Dokumenter — ALLE 10 dokument-records er backet af ægte .docx-filer med indhold der matcher status og kontekst: kladder har opgavetekst + påbegyndt arbejde med noter/citater/TODO'er; afleverede har fuld struktur (500-900 ord); bedømte har feedback der refererer til konkrete steder i teksten. Kronik-kladde, færdig tekstanalyse (H.C. Andersen, offentlig ejendom), to procesbeskrivelser, matematik-dokument m. tabel, kemi-forsøgsnoter, reading log og dispositioner. Tre opgave- vedhæftninger fra lærerne (ægte opgaveformuleringer som .docx). Dokumenter kan downloades fra arbejdsrummet (download-knappen) i begge roller. Verificér med:
docker compose exec backend bun scripts/verifyDemoDocs.ts
Scriptet asserterer for hvert dokument: fil på disk (ikke tom), editor-config-endpointet svarer, og download-endpointet returnerer filen med korrekt content-type.
Aktivitet: chat i 3 grupper (4-6 beskeder, spredt over flere dage så dato-separatorer vises), aktivitetslog over de sidste 14 dage (oprettelse → redigering → aflevering → bedømmelse → afslutning → help-flag) og 2 direkte beskeder til Karen (én ulæst fra i dag).
Demo-flowet (forslag)¶
- Log ind som Karen → dashboard viser help-flagget fra Pixelpoeterne øverst + "Kommende frister" med kronikken i rød (<24t).
- Gå til gruppen → arbejdsrummet → åbn kronik-kladden i OnlyOffice.
- Vis det afsluttede Billedkunst-emne: dokumenter er låste (watch-only), ZIP-eksport fra emne-siden.
- Log ind som Viggo → se den unikke opgavetekst, det låste emne (skrivebeskyttet) og chatten med dato-separatorer.
- Som Clara ses den planlagte kemi-gruppe IKKE (først om 3 dage).
Geninstallation¶
Review-apps seeder selv på første boot. Manuel kørsel mod tom database:
docker compose exec backend bun scripts/seedDemoData.ts
Scriptet fejler (exit 1) hvis verifikationen efter seed ikke holder — f.eks. hvis invarianten brydes, dokumentfiler mangler på disken, eller der ikke findes præcis ét help-flag/én planlagt gruppe.