CRITICAL story-contact-list-search-coordinator-001 5 pts
5
Story Points
Critical
Priority
Contact List & Search
Feature

User Story

As a user
I want to open the Contacts screen and see a list of contacts and peer mentors relevant to my role
So that So that I can quickly identify the people I need to interact with without being overwhelmed by records outside my scope

Acceptance Criteria

  • Given a coordinator is authenticated, when they open the Contacts screen, then they see all contacts and peer mentors within their organizational scope
  • Given a peer mentor is authenticated, when they open the Contacts screen, then they see only contacts linked to their active assignments
  • Given a large contact list (100+ entries), when the screen loads, then items render progressively without blocking the UI using SliverList
  • Given any user opens the Contacts screen, when the list loads, then each contact card displays name, status badge, area, and relevant action shortcuts
  • Given Supabase RLS policies are active, when the Contact Repository fetches data, then only records matching the user's organisation membership are returned

Business Value

The contacts list is the most-used screen for both roles and is the operational backbone of daily peer mentor management. For organisations like NHF with 1,400 local branches, a fast and correctly scoped contact list is essential to prevent information overload and ensure coordinators and peer mentors can locate the right person without delay. Role-scoped data also protects sensitive personal information by ensuring users only see contacts they are authorised to interact with.