low complexity extracted Activity Oversight Confidence: 100%
7
Components
2
Shared
0
User Stories
Yes
Analyzed

Description

Allows administrators and coordinators to flag specific activities for follow-up, dispute, or further investigation - for example when an activity looks anomalous, when a peer mentor needs coaching on it, or when external scrutiny (Bufdir audit) requires it to be marked. Flags carry a category, free-text reason, and resolution state, and surface on the activity record across both admin views and downstream reports. Unlike rejection (which removes an activity from the approved set), flagging preserves the activity in place while making it visible as something requiring attention.

Sources & reasoning

Required by §8 canonical taxonomy under Activity Oversight area. Supports the Bufdir-etterprÞving need from §3.2 (NHF). Not in MVP admin scope (§5) which is restricted to user admin and basic overview; aligns to Core Product alongside the rest of the oversight workflow.

  • admin-activity-oversight | Activity Oversight | Activity Review & Approval, Activity Flagging, Duplicate Activity Detection
  • Dokumentvedlegg til aktiviteter: Invitasjoner, Facebook-skjermbilder m.m. - viktig for Bufdir-etterprĂžving.

Analysis

Business Value

Organizations need a lightweight mechanism between "approve" and "reject" - many activities are valid but warrant a note (incomplete documentation, contested duration, sensitive context). Flagging gives admins a way to track these without losing the underlying data, which directly supports Bufdir-etterprĂžving where NHF specifically called out the need to attach context (invitations, screenshots) and explain edge cases. It also improves coaching loops: patterns of flags on a particular mentor or activity type drive targeted training rather than reactive cleanup at reporting time.

Implementation Notes

Introduces a flag store keyed to activity_id with category enum (anomalous, documentation-missing, disputed, audit-hold, other), reason text, created_by, created_at, resolved_at, and resolution note. The admin Flag Panel UI lets reviewers attach, list, and resolve flags inline from the activity detail or the approval queue. Flags integrate with the audit log and with notifications so that the activity owner is informed when a flag is opened or closed. Storage uses the shared relational database; no separate service is needed.

Quality Assurance

Organization Administrator (reviewer)
1
Scenarios
5
UAT Steps
14
A11y Annotations
4
Role Boundaries
Organization Administrator

Organization Administrator

Quick UAT

  1. Logg inn i Admin-portalen som Organisasjonsadministrator og Ă„pne Aktiviteter → Flagg-panelet.
  2. Velg en aktivitet fra hovedfeeden som har mistenkelig eller manglende data, og trykk Flagg.
  3. Velg Ärsakskode (f.eks. 'Manglende data') og skriv en kort fritekstnotat, og trykk Lagre.
  4. Bekreft at aktiviteten vises i Flagg-panelet med Ärsak, notat, ditt navn og tidsstempel.
  5. Åpne den flaggede aktiviteten og bekreft at den er ekskludert fra automatisk godkjenning og Bufdir-eksport inntil flagget lþses.

Quick UAT — Accessibility

  1. Logg inn i Admin-portalen som Organisasjonsadministrator og Ă„pne Aktiviteter → Flagg-panelet.
    • Screen reader Sideoverskrift 'Flagg-panel' annonseres; tab-rekkefĂžlge: hovednav → sideoverskrift → flagg-tabell.
    • Keyboard / focus Hovednavigasjon nĂ„s med Tab; Aktiviteter → Flagg-panel Ă„pnes med Enter.
    • Focus visibility Synlig fokusring pĂ„ alle navigasjonslenker.
  2. Velg en aktivitet fra hovedfeeden som har mistenkelig eller manglende data, og trykk Flagg.
    • Screen reader Rad-rolle annonseres med aktivitetsdetaljer; 'Flagg'-knappen leses som knapp.
    • Keyboard / focus Piltaster navigerer rader; Tab nĂ„r Flagg-knapp; Enter aktiverer.
    • Touch target Flagg-knapp er minimum 24×24 CSS-piksler.
  3. Velg Ärsakskode (f.eks. 'Manglende data') og skriv en kort fritekstnotat, og trykk Lagre.
    • Screen reader Modal annonseres som dialog; Ă„rsakskode-feltet leses med 'obligatorisk'; notatfelt med tegnteller.
    • Keyboard / focus Tab gjennom Ă„rsakskode → notat → Lagre; Esc lukker dialogen.
    • Focus visibility Synlig fokusring pĂ„ dropdown og tekstomrĂ„de; alle felter er merket med synlig label.
  4. Bekreft at aktiviteten vises i Flagg-panelet med Ärsak, notat, ditt navn og tidsstempel.
    • Live region 'Aktivitet flagget. Lagt til i Flagg-panelet.'
    • Contrast Flagg-status vises med bĂ„de ikon og tekst, ikke kun farge; kontrast 4.5:1.
  5. Åpne den flaggede aktiviteten og bekreft at den er ekskludert fra automatisk godkjenning og Bufdir-eksport inntil flagget lþses.
    • Screen reader Status-banner annonseres: 'Flagget - ekskludert fra automatisk godkjenning og Bufdir-eksport.'
    • Zoom Status-banner og detaljer leselig ved 200% zoom.
    • Contrast Status-banner bruker bĂ„de ikon og tekst, kontrast minimum 4.5:1.

Role Boundaries

4 role(s) must NOT access this feature
  • Peer Mentor (Likeperson)

    Likepersoner logger kun inn i mobilappen; Flagg-panelet finnes ikke i mobilnavigasjonen og deep-link til admin-portal returnerer 403.

  • Coordinator (Koordinator)

    Koordinatorer logger kun inn i mobilappen og har ikke admin-portal-tilgang; deep-link til Flagg-panelet returnerer 403.

  • Global Administrator

    Uten tidsbegrenset support-tilgang gitt av organisasjonen er Flagg-panelet for denne org-en utilgjengelig; data fra andre org-er er strengt isolert.

  • Prospective Buyer

    Ingen pÄlogging pÄ admin-portal; Flagg-panelet er ikke eksponert pÄ salgsnettstedet.

Expected End State

Aktiviteten er markert som flagget med Ärsakskode, fritekstnotat, flaggerens identitet og tidsstempel, vises i Flagg-panelet for triage, og er ekskludert fra automatisk godkjenning og Bufdir-eksport inntil flagget er lÞst.

User Stories

No user stories have been generated for this feature yet.