Sensitive Field Readout Warning
Feature Detail
Description
This feature displays a visible warning when a sensitive form field - such as a national identity number, medical information, or personal address - gains accessibility focus and is about to be vocalized by a screen reader. The warning alerts the user and nearby persons before audio exposure occurs, allowing the user to pause, cover the speaker, or reposition in a private space. The SensitiveFieldWarningWidget wraps designated fields, while the SensitiveFieldService maintains a configurable registry of fields requiring this privacy protection across activity registration, contact detail, and assignment screens.
Sources & reasoning
Line 37 names this requirement explicitly within the WCAG 2.2 AA accessibility section, attributed to NHF. That section (lines 26-38) is universally scoped to Fase 1 / MVP per lines 28 and 321. The sensitivity of assignment and contact data across all organizations - and the specific screen-reader user base in Blindeforbundet and NHF - makes this a high-priority privacy control warranting must_have at MVP.
-
docs/source/likeperson.md ยท line 37Varsling ved opplesning av sensitive felt (NHF).
Analysis
Peer mentors and coordinators regularly handle highly sensitive personal data - identity numbers, medical records, and home addresses - particularly in encrypted assignment workflows and contact management. Screen reader users, a primary audience in Blindeforbundet and NHF, risk inadvertently broadcasting this data in shared or public settings such as cafes, public transport, or family homes. Without a proactive warning mechanism, visually impaired users have no way to prevent audio exposure of sensitive content. This feature directly protects the privacy of contacts and the user, satisfies GDPR data minimisation obligations, and builds trust with partner organizations operating under strict confidentiality requirements.
The SensitiveFieldWarningWidget detects accessibility focus via Flutter's Semantics.onFocus callback and presents a modal overlay or accessible snackbar before the screen reader reads the field value. The SensitiveFieldService maintains a configurable registry of field identifiers classified as sensitive, enabling feature teams to register new fields without modifying widget logic. The warning itself must be screen-reader-readable and dismissible via tap or keyboard without triggering the underlying field readout. Integration with the AccessibilityAuditService ensures new form fields across all screens are reviewed for sensitivity classification during development. The widget is reusable as a drop-in wrapper across the contact detail, assignment inbox, and activity wizard screens.
Components (6)
Shared Components
These components are reused across multiple features
User Stories
No user stories have been generated for this feature yet.