# Sprint 2 Architecture Report

## Scope

Enterprise agile maturity on MVNexus V2 without rebuilding CRUD or breaking existing APIs.

## New backend modules

| Component | Responsibility |
|-----------|----------------|
| `SprintTeamCapacityService` | Per-member MD capacity vs sprint-assigned work |
| `SprintHealthEngineService` | Executive health: good / warning / at_risk / critical |
| `ProjectCommandCenterService` | Aggregated overview payload for project command center |
| `AgileNotificationMonitorService` | Scheduled sprint/milestone/capacity/health notifications |
| `ProjectSprintCapacityAllocation` | Persisted team capacity per sprint |

## API additions (non-breaking)

- `GET /projects/{id}/command-center`
- `GET /projects/{id}/capacity-planning?sprint_id=`
- `GET /projects/{id}/sprints/{sprint}/team-capacity`
- `PUT /projects/{id}/sprints/{sprint}/capacity-allocations`
- `GET /projects/{id}/sprints/{sprint}/executive-health`

## Frontend

- `ProjectCapacityPage` — capacity dashboard + team grid
- `ProjectDetailPage` — four-row executive overview
- `SortableBacklogList` — drag-and-drop backlog ranking
- `ExecutiveHealthBadge` / `SprintHealthSummaryCard`
- Subnav **Capacity** tab

## Realtime & audit

- `BacklogReordered` event (existing) + audit metadata `backlog_reordered`
- `SprintCapacityChanged` listener for in-app/email notifications

## Data

Migration `project_sprint_capacity_allocations` stores per-user MD per sprint.
