Workshop Notes
Feature Detail
Description
Workshop Notes provides peer mentors and coordinators with a dedicated note-taking tool scoped to individual workshop sessions within the Mentor Program area. Users can create, edit, and review freeform notes tied to a specific session, preserving reflections and insights captured during or after the event. Notes are linked to the parent workshop session and displayed in the workshop detail view. The editor supports speech-to-text input where the device and organization configuration permits, reusing the existing SpeechToTextService integration already available in the activity-registration area.
Sources & reasoning
Line 100 explicitly names "eget notatverktøy" (own note tool) as one of three sub-capabilities of the mentorordning for two-day group sessions. This is a direct requirement, not inferred. Fase 3 placement confirmed by line 357, mapping to v1.1 by ordinal position. Workshop Notes depends on Career Workshops as the parent session record.
-
docs/source/likeperson.md · line 100**Mentorordning (karriereverksted):** Eget notatverktøy, to-do-lister og deltakerlister for gruppeveiledning over to dager.
Analysis
Career workshops generate knowledge, commitments, and guidance that are easily lost without a structured capture mechanism embedded in the same tool. Workshop Notes ensures that value created during a two-day session is preserved and accessible after the event, enabling coordinators to follow up and peer mentors to revisit guidance they received. This directly addresses Blindeforbundet's need for a notatverktøy integrated into the mentor program rather than a disconnected external tool. Persistent session notes also serve as a quality record, allowing administrators to review topics covered across sessions and identify gaps in the mentoring program over time, supporting continuous improvement of the karriereverksted format.
Implemented as a WorkshopNoteEditor widget in Flutter using a rich text input backed by Riverpod AsyncNotifier state. The editor posts to a workshop notes API endpoint scoped to the parent session ID. WorkshopNoteService handles API communication; notes are stored in Drift and synced when connectivity is restored via the existing mutation outbox pattern. The editor reuses AppTextField design tokens and supports the speech-to-text integration point from SpeechToTextService where the organization has the speech module enabled. WCAG 2.2 AA requires adequate contrast, visible focus indicator at all text insertion points, and a semantic label on the editor field for screen reader compatibility.
Quality Assurance
Coordinator (primary) · Peer Mentor (same flow)Coordinator
Quick UAT
- Logg inn i mobilappen som Koordinator. Naviger til Mentor Program og åpne karriereverksted-listen.
- Velg et karriereverksted fra listen og åpne detaljvisningen for det aktuelle verkstedet.
- Trykk på «Legg til notat» i notatseksjonen og skriv inn et fritekstnotat.
- Aktiver tale-til-tekst (mikrofon-ikon) hvis organisasjonen tillater det, og dikter en setning. Bekreft at teksten settes inn i notatfeltet.
- Trykk «Lagre» og bekreft at notatet vises i notatlisten under det aktuelle verkstedet.
- Åpne det lagrede notatet, endre teksten, og trykk «Oppdater». Bekreft at den reviderte teksten vises.
- Naviger bort fra verkstedet og tilbake. Bekreft at notatet fremdeles er synlig og innholdet er bevart.
Quick UAT — Accessibility
-
Logg inn i mobilappen som Koordinator. Naviger til Mentor Program og åpne karriereverksted-listen.
- Screen reader Skjermoverskrift «Karriereverksted» annonseres; navigasjonspunkter i bunntabben leses med rolle og tilstand.
- Keyboard / focus Tab-rekkefølge: bunntab Hjem → Kontakter → Legg til → Arbeid → Varsler; Mentor Program nås via Arbeid-tab.
- Focus visibility Synlig fokusring på aktivt navigasjonselement; valgt tab indikeres med tilstandstekst i tillegg til fargeendring.
-
Velg et karriereverksted fra listen og åpne detaljvisningen for det aktuelle verkstedet.
- Screen reader Listeelementet annonseres med verkstedstittel, dato og deltakertall. «Dobbelttrykk for å åpne» leses av TalkBack.
- Keyboard / focus Piltaster navigerer listen; Enter åpner detaljvisning.
- Touch target Listeelementet er minimum 48×48 CSS px og har tydelig trykk-feedback.
-
Trykk på «Legg til notat» i notatseksjonen og skriv inn et fritekstnotat.
- Screen reader «Legg til notat»-knappen annonseres med rolle «knapp»; tekstfeltet annonseres med label «Notatinnhold» og plassholdertekst.
- Focus visibility Fokus flyttes automatisk til tekstinputfeltet etter at «Legg til notat» trykkes; fokusring er synlig.
- Touch target «Legg til notat»-knappen er minimum 44×44 CSS px.
-
Aktiver tale-til-tekst (mikrofon-ikon) hvis organisasjonen tillater det, og dikter en setning. Bekreft at teksten settes inn i notatfeltet.
- Screen reader Mikrofon-knappen annonseres med label «Tale-til-tekst, inaktiv». Tilstanden oppdateres til «Tale-til-tekst, aktiv» ved aktivering.
- Live region 'Tale-til-tekst aktivert. Snakk nå.' annonseres som polite live region. Transkribert tekst settes inn uten fokustap.
- Contrast Mikrofonikon er synlig i aktiv tilstand uten å bruke farge alene; aktiv tilstand angis med form-endring eller tekst.
-
Trykk «Lagre» og bekreft at notatet vises i notatlisten under det aktuelle verkstedet.
- Screen reader «Lagre»-knappen annonseres med rolle «knapp». Etter lagring annonseres «Notat lagret» som polite live region.
- Focus visibility Fokus returnerer til notatlisten etter lagring; første listeelement i listen får fokus.
- Live region 'Notat lagret.' annonseres umiddelbart etter vellykket lagring.
-
Åpne det lagrede notatet, endre teksten, og trykk «Oppdater». Bekreft at den reviderte teksten vises.
- Screen reader Tekstfeltet annonserer eksisterende innhold ved fokus. «Oppdater»-knappen er skilt fra «Slett»-knappen i leseorden.
- Keyboard / focus Tab navigerer: notatfelt → Oppdater → Avbryt. Shift+Tab reverserer rekkefølgen korrekt.
- Focus visibility «Oppdater»- og «Avbryt»-knapper har synlig fokusring og er minimum 44×44 CSS px.
-
Naviger bort fra verkstedet og tilbake. Bekreft at notatet fremdeles er synlig og innholdet er bevart.
- Screen reader Notatlisten lastes og hvert notat annonseres med forfatter, tidsstempel og forhåndsvisning av tekst.
- Zoom Notatlisten er lesbar og aksjonene er tilgjengelige ved 200 % zoom uten horisontal rulling.
Role Boundaries
3 role(s) must NOT access this feature-
Organization Administrator
Organisasjonsadministratorer logger ikke inn i mobilappen; de har ingen tilgang til Mentor Program-skjermer. Forsøk på deep-link returnerer 403.
-
Global Administrator
Globale administratorer har ikke mobil-apptilgang; de omdirigeres til Admin-portalen ved innloggingsforsøk. Mentor Program-skjermer er ikke tilgjengelige.
-
Prospective Organization Representative
Potensielle organisasjonsrepresentanter har ingen brukerkontoer i systemet og kan ikke logge inn i mobilappen.
Expected End State
Notatet er lagret og synlig i notatlisten under det aktuelle karriereverkstedet. Notatet er knyttet til forfatterens identitet og sessjonens ID. Endringer vises umiddelbart uten sideomlasting.
Components (20)
Shared Components
These components are reused across multiple features
User Stories
No user stories have been generated for this feature yet.