# dashboard Specification ## Purpose TBD - created by archiving change add-dashboard-widgets. Update Purpose after archive. ## Requirements ### Requirement: Dashboard Statistics The system SHALL display aggregated statistics showing the user's task overview. #### Scenario: User views task statistics - Given: User is authenticated - When: User navigates to Dashboard - Then: System displays: - Total tasks assigned to user - Tasks due this week - Overdue tasks count - Completion rate percentage ### Requirement: My Workload Widget The system SHALL display the current user's workload summary for the current week. #### Scenario: User views personal workload - Given: User is authenticated - When: User views Dashboard - Then: System displays: - Allocated hours vs capacity hours - Load percentage with visual indicator - Load level status (normal/warning/overloaded) ### Requirement: Project Health Summary The system SHALL display an aggregated project health summary. #### Scenario: User views project health overview - Given: User is authenticated - When: User views Dashboard - Then: System displays: - Total projects count - Healthy/At-Risk/Critical breakdown - Average health score - Projects with blockers count ### Requirement: Quick Actions The system SHALL provide quick navigation links to common actions. #### Scenario: User accesses quick actions - Given: User is authenticated - When: User views Dashboard - Then: System displays navigation links to: - Spaces page - Workload page - Project Health page - (Admin only) Audit page ### Requirement: Dashboard API Endpoint The backend SHALL provide a single aggregated endpoint for dashboard data. #### Scenario: Frontend fetches dashboard data - Given: User is authenticated - When: Frontend requests GET /api/dashboard - Then: Backend returns: - User task statistics - Current week workload summary - Project health summary - And: Response is optimized with single database query where possible