Backend: - Add dashboard API router with widget endpoints - Create dashboard schemas for widget data - Add dashboard tests Frontend: - Enhance Dashboard page with widget components - Add dashboard service for API calls - Create reusable dashboard components OpenSpec: - Archive add-dashboard-widgets change - Add dashboard capability specs 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
70 lines
2.0 KiB
Markdown
70 lines
2.0 KiB
Markdown
# 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
|
|
|