# Dashboard Requirements Traceability Matrix

> **Source PRD:** [PRD: Fides Dashboard](https://ethyca.atlassian.net/wiki/spaces/PM/pages/4340056066/PRD+Fides+Dashboard)
>
> **Purpose:** Track every PRD requirement against implementation status. Update as each phase completes.

---

## Legend


| Status      | Meaning                                       |
| ----------- | --------------------------------------------- |
| DONE        | Implemented and working                       |
| IN PROGRESS | Currently being implemented                   |
| PLANNED     | In implementation plan, not started           |
| DEFERRED    | Explicitly deferred to a later sprint/version |
| NOT STARTED | Not yet planned                               |


---

## 1. Strategic & Architectural Requirements


| ID   | PRD Requirement                           | PRD Section | Status      | Notes                                                                                                                   |
| ---- | ----------------------------------------- | ----------- | ----------- | ----------------------------------------------------------------------------------------------------------------------- |
| S-01 | Dashboard behind feature flag             | 1           | DONE        | `alphaDashboard` flag in `flags.json` (dev=true, test/prod=false)                                                       |
| S-02 | Dark/light mode support                   | 1, 7        | DONE        | `alphaDarkMode` flag; theme toggle in CommandBar                                                                        |
| S-03 | Responsive grid layout                    | 4 (Layout)  | DONE        | Ant Row/Col with breakpoints in `HomeDashboard.tsx`                                                                     |
| S-04 | Agentic Maturity Tier 1 (AI as Feature)   | 1           | DONE        | Astralis PIA agent shipping separately                                                                                  |
| S-05 | Agentic Maturity Tier 2 (AI as Co-pilot)  | 1           | IN PROGRESS | **Current focus.** Agent annotations on GPS, rationales on actions, context-aware briefing implemented. "How to improve" recommendations pending frontend. |
| S-06 | Agentic Maturity Tier 3 (AI as Operator)  | 1           | DEFERRED    | Future: auto-approvals, delegation, agent-executed actions                                                              |
| S-07 | Agentic Maturity Tier 4 (AI as Interface) | 1           | DEFERRED    | Future: conversational dashboard, Cmd+K agent queries                                                                   |
| S-08 | Dark mode as default                      | 7           | NOT STARTED | PRD recommends dark default; currently light default                                                                    |


---

## 2. Persona Strategy


| ID   | PRD Requirement                                            | PRD Section       | Status      | Notes                                                 |
| ---- | ---------------------------------------------------------- | ----------------- | ----------- | ----------------------------------------------------- |
| P-01 | Role selection (settings)                                  | 2, 5 (Sprint 1-2) | NOT STARTED | User picks persona to control dashboard defaults      |
| P-02 | Persona-adaptive section ordering                          | 2, 5 (Sprint 3-4) | NOT STARTED | Reorder sections based on user role                   |
| P-03 | Steward Inbox (separate experience)                        | 2, 8              | NOT STARTED | Separate lightweight task interface for data stewards |
| P-04 | Steward task types (classification, DSR, PIA, system info) | 8                 | NOT STARTED | Depends on P-03                                       |


---

## 3. Risk Scoring Framework


| ID   | PRD Requirement                                                                                        | PRD Section       | Status                          | Notes                                                                                              |
| ---- | ------------------------------------------------------------------------------------------------------ | ----------------- | ------------------------------- | -------------------------------------------------------------------------------------------------- |
| R-01 | Governance Posture Score (0-100)                                                                            | 3                 | DONE | PostureCard renders score; backend computes weighted posture from 4 real dimensions                     |
| R-02 | GPS 4 initial dimensions (Coverage, Classification, DSR, Consent)                                      | 3, 5 (Sprint 1-2) | DONE | Radar chart + real dimension scores via `DashboardRepository`                                      |
| R-03 | GPS expanded to 7 dimensions (+Policy, AI Readiness, Assessments)                                      | 3, 5 (Sprint 3-4) | NOT STARTED                     | Frontend currently supports only 4                                                                 |
| R-04 | Score band presentation (Critical/At Risk/Good/Excellent)                                              | 3                 | DONE | Band computed from real GPS score via `score_to_band()`                                            |
| R-05 | Score trend direction (up/down/unchanged)                                                              | 3                 | DONE | `diff_percent` computed from previous cached score                                                 |
| R-06 | Score change narrative (Astralis annotation)                                                           | 3                 | DONE | **Tier 2 co-pilot.** `_posture_annotation()` generates context-aware text from real dimension data |
| R-07 | GPS Breakdown Panel (per-dimension detail)                                                             | 3                 | DONE                            | `PostureBreakdownContent` in `DashboardDrawer`                                                     |
| R-08 | Per-dimension action links                                                                             | 3                 | DONE                            | Dimension routes in `constants.ts` (Coverage->/systems, etc.)                                      |
| R-09 | Dimension ring pulse animation on critical                                                             | 3                 | DONE                            | 2s pulse animation on error-state radar segments                                                   |
| R-10 | Risk Cards (discrete actionable alerts)                                                                | 3                 | DONE | Priority Action Queue populated from real PrivacyRequest, StagedResource, System data              |
| R-11 | Risk Card agent rationale (expandable)                                                                 | 3                 | DONE | **Tier 2 co-pilot.** `agent_summary` populated with real context via `_dsr_rationale()`, `_classification_rationale()` |
| R-12 | Risk Card delegation option ("Let Astralis handle")                                                    | 3                 | DEFERRED                        | Future: Tier 3 agent-as-operator                                                                   |
| R-13 | V1 Risk dimensions (8 types)                                                                           | 3                 | IN PROGRESS | 5 of 7 action types implemented (dsr, classification, system_review, steward, pia). Consent anomaly + policy violation deferred. |
| R-14 | V2/V3 Risk dimensions (jurisdictional, vendor concentration, velocity, AI readiness, regulatory delta) | 3                 | DEFERRED                        | V2/V3 scope                                                                                        |


---

## 4. Dashboard Components

### 4.0 Agent Briefing


| ID     | PRD Requirement                         | PRD Section | Status                          | Notes                                                                         |
| ------ | --------------------------------------- | ----------- | ------------------------------- | ----------------------------------------------------------------------------- |
| C00-01 | Personalized summary on login           | 4.0         | DONE | `AgentBriefingBanner` renders; backend builds context-aware briefing from real metrics             |
| C00-02 | Quick action links (1-3 most important) | 4.0         | DONE | QuickAction links generated from real overdue DSRs, pending classifications, stewardless systems   |
| C00-03 | Dismissible (session-persistent)        | 4.0         | DONE                            | Uses `sessionStorage` key `dashboard_briefing_dismissed`                      |
| C00-04 | Severity-based alert color              | 4.0         | DONE                            | Alert type based on highest quick_action severity                             |
| C00-05 | Persona-aware briefings                 | 4.0         | NOT STARTED                     | Requires role selection (P-01)                                                |
| C00-06 | LLM briefing with real data context     | 4.0         | DONE | **Tier 2 co-pilot.** Briefing built from real PR counts, coverage %, classification pending, stewardless systems |


### 4.1 Command Bar


| ID     | PRD Requirement                                                | PRD Section | Status                          | Notes                                                    |
| ------ | -------------------------------------------------------------- | ----------- | ------------------------------- | -------------------------------------------------------- |
| C01-01 | Posture Score Badge (compact, always visible)                      | 4.1         | DONE | Animated score in CommandBar; real GPS from weighted dimensions                                    |
| C01-02 | Quick Stats pills (DSRs pending, overdue, systems, violations) | 4.1         | DONE | 4 stats computed from real PriorityActions query                                                   |
| C01-03 | Click GPS score opens breakdown                                | 4.1         | DONE                            | Opens `PostureBreakdownContent` drawer                   |
| C01-04 | Search / Ask Astralis (unified input)                          | 4.1         | NOT STARTED                     | V1: search only; V2: Astralis NL queries                 |
| C01-05 | Notification Bell                                              | 4.1         | NOT STARTED                     | V1: dashboard alerts as notifications                    |
| C01-06 | Persona-adaptive quick stats                                   | 4.1         | NOT STARTED                     | Requires role selection (P-01)                           |
| C01-07 | Theme mode toggle                                              | 4.1         | DONE                            | Conditional on `alphaDarkMode` flag                      |


### 4.2 Governance Posture Score (GPS)


| ID     | PRD Requirement                                        | PRD Section | Status                          | Notes                                                               |
| ------ | ------------------------------------------------------ | ----------- | ------------------------------- | ------------------------------------------------------------------- |
| C02-01 | Large animated score number                            | 4.2         | DONE                            | `useCountUp` hook with 800ms easing                                 |
| C02-02 | Dimension ring/radar visualization                     | 4.2         | DONE                            | Radar chart in PostureCard (4 dimensions)                           |
| C02-03 | Trend line with delta                                  | 4.2         | DONE | Arrows + diff_percent computed from previous cached score                                         |
| C02-04 | Click score opens breakdown panel                      | 4.2         | DONE                            | Opens drawer with `PostureBreakdownContent`                         |
| C02-05 | Click dimension filters action queue                   | 4.2         | DONE                            | `useDimensionFilter` store; PriorityActionsCard consumes it         |
| C02-06 | Score computed from real data (weighted formula)       | 4.2         | DONE | `DashboardRepository` queries for coverage, classification, DSR compliance, consent alignment    |
| C02-07 | "How to improve" section ranking actions by GPS impact | 4.2         | PLANNED                         | **Tier 2 co-pilot.** Add recommendations to PostureBreakdownContent |
| C02-08 | "Ask why" tooltip                                      | 4.2         | DEFERRED                        | Future: Tier 3/4 inline Astralis queries                            |


### 4.3 Priority Action Queue


| ID     | PRD Requirement                                            | PRD Section | Status                                      | Notes                                             |
| ------ | ---------------------------------------------------------- | ----------- | ------------------------------------------- | ------------------------------------------------- |
| C03-01 | Intelligent prioritized task queue                         | 4.3         | DONE                                        | Real actions from PrivacyRequest, StagedResource, System queries |
| C03-02 | Urgency grouping (Act Now / Scheduled / When Ready)        | 4.3         | DONE                                        | 3 tabs via `URGENCY_TABS` in constants            |
| C03-03 | Action card: icon, title, context, scope, time, CTA button | 4.3         | DONE                                        | Full card layout with action-type icons           |
| C03-04 | CTA routes to correct flow (<2 clicks)                     | 4.3         | DONE                                        | `action_data` populated with real `request_id`, `system_id`, `fides_key` |
| C03-05 | Empty state celebration                                    | 4.3         | DONE                                        | CheckOutlined icon + "All clear" message          |
| C03-06 | Dimension filtering from radar chart                       | 4.3         | DONE                                        | Queries with `dimension` param when filter active |
| C03-07 | DSR actions from real PrivacyRequest data                  | 4.3         | DONE                                        | `get_actionable_dsrs()` with overdue/approaching SLA detection |
| C03-08 | Classification review from real StagedResource data        | 4.3         | DONE                                        | `get_pending_classification_reviews()` grouped by system |
| C03-09 | System review from real detected resources                 | 4.3         | DONE                                        | `get_new_staged_resources()` for new tables         |
| C03-10 | Steward assignment from real System data                   | 4.3         | DONE                                        | `get_systems_without_stewards()` via SystemManager join |
| C03-11 | PIA updates from real assessment data                      | 4.3         | DEFERRED                                    | Needs PrivacyAssessment model queries (not yet wired) |
| C03-12 | Consent anomaly actions                                    | 4.3         | DEFERRED                                    | Placeholder for now                               |
| C03-13 | Policy violation actions                                   | 4.3         | DEFERRED                                    | Placeholder for now                               |
| C03-14 | Snooze/dismiss option                                      | 4.3         | DONE                                        | Redis set `dashboard:dismissed_actions` with 24h TTL |
| C03-15 | Batch actions for bulk review/approve                      | 4.3         | NOT STARTED                                 | V2 scope                                          |
| C03-16 | Completing action removes with animation + GPS updates     | 4.3         | NOT STARTED                                 | Requires frontend mutation + cache invalidation   |


### 4.4 DSR Status Panel


| ID     | PRD Requirement                                               | PRD Section | Status                          | Notes                                                              |
| ------ | ------------------------------------------------------------- | ----------- | ------------------------------- | ------------------------------------------------------------------ |
| C04-01 | Active DSR count                                              | 4.4         | DONE | Real count from PrivacyRequest model (7 active statuses)                                          |
| C04-02 | Breakdown by status (in progress, pending, awaiting approval) | 4.4         | DONE | Real counts: in_processing, requires_input+requires_manual_finalization, pending                  |
| C04-03 | SLA health bar                                                | 4.4         | DONE | Real SLA health grouped by policy key, bucketed by due_date vs now                               |
| C04-04 | Overdue count (prominent, red if >0)                          | 4.4         | DONE | Real count: due_date < now AND status in active statuses                                         |
| C04-05 | Click-through to DSR management                               | 4.4         | DONE                            | "View all requests" links to `/privacy-requests`                   |
| C04-06 | Click SLA segment filters by action type                      | 4.4         | DONE                            | `onCategoryClick` routes to `/privacy-requests?action_type={type}` |
| C04-07 | Trend sparkline (DSR volume 30/90 days)                       | 4.4         | NOT STARTED                     | Not in DSRStatusCard; partially in TrendCard (dsr_volume)          |
| C04-08 | Real data from PrivacyRequest model                           | 4.4         | DONE | `DashboardRepository.get_privacy_request_counts()` + `get_sla_health()`                          |


### 4.5 System Coverage Panel


| ID     | PRD Requirement                                                        | PRD Section | Status                          | Notes                                                      |
| ------ | ---------------------------------------------------------------------- | ----------- | ------------------------------- | ---------------------------------------------------------- |
| C05-01 | Coverage donut visualization                                           | 4.5         | DONE | Donut chart powered by real System + StagedResource queries                                       |
| C05-02 | System count breakdown (classified, partial, unclassified, no steward) | 4.5         | DONE | Real counts from `get_system_coverage()` repository method                                        |
| C05-03 | Coverage percentage (center label)                                     | 4.5         | DONE | `(fully_classified / total_systems) * 100` from real data                                         |
| C05-04 | "Connect more systems" CTA                                             | 4.5         | DONE                            | Links to `ADD_SYSTEMS_MANUAL_ROUTE`                        |
| C05-05 | Click-through to system inventory                                      | 4.5         | NOT STARTED                     | No link to full system list currently                      |
| C05-06 | Backend endpoint implementation                                        | 4.5         | DONE | `GET /plus/dashboard/system-coverage` endpoint added to routes                                    |
| C05-07 | Real data from System + StagedResource models                          | 4.5         | DONE | `DashboardRepository.get_system_coverage()` queries ctl_systems + stagedresource                  |
| C05-08 | Network/topology view (ReactFlow)                                      | 4.5         | DEFERRED                        | V2: signature visual for connected systems                 |


### 4.6 AI Readiness Panel


| ID     | PRD Requirement                    | PRD Section | Status      | Notes                                                         |
| ------ | ---------------------------------- | ----------- | ----------- | ------------------------------------------------------------- |
| C06-01 | AI Readiness Score (aggregate)     | 4.6         | NOT STARTED | V1 GPS has 4 dimensions; this is in the 7-dimension expansion |
| C06-02 | Per-system readiness summary       | 4.6         | NOT STARTED | Sprint 3-4 scope                                              |
| C06-03 | Readiness criteria checklist       | 4.6         | NOT STARTED | classified, consent-bound, de-ID, policy, PIA                 |
| C06-04 | Designed for executive screenshots | 4.6         | NOT STARTED | Visual design consideration                                   |


### 4.7 Consent Health Panel


| ID     | PRD Requirement                           | PRD Section | Status      | Notes            |
| ------ | ----------------------------------------- | ----------- | ----------- | ---------------- |
| C07-01 | Active consent records count              | 4.7         | NOT STARTED | Sprint 3-4 scope |
| C07-02 | Monitoring status (healthy/failures)      | 4.7         | NOT STARTED | Sprint 3-4 scope |
| C07-03 | Anomaly flag (unusual opt-out rates)      | 4.7         | NOT STARTED | Sprint 3-4 scope |
| C07-04 | Consent-to-processing alignment           | 4.7         | NOT STARTED | Sprint 3-4 scope |
| C07-05 | Click-through to Janus consent management | 4.7         | NOT STARTED | Sprint 3-4 scope |


### 4.8 Activity Feed


| ID     | PRD Requirement                                        | PRD Section | Status                               | Notes                                          |
| ------ | ------------------------------------------------------ | ----------- | ------------------------------------ | ---------------------------------------------- |
| C08-01 | Real-time scrolling feed                               | 4.8         | NOT STARTED (UI) / PLANNED (backend) | RTK Query hook exists; no component renders it |
| C08-02 | Filterable by activity type and system                 | 4.8         | NOT STARTED                          | Backend supports page/size params only         |
| C08-03 | Each item clickable to navigate                        | 4.8         | NOT STARTED                          | Needs action routing per event type            |
| C08-04 | Subtle animations on new items                         | 4.8         | NOT STARTED                          | Sprint 3-4 scope                               |
| C08-05 | "Powered by" attribution (Helios/Janus/Lethe/Astralis) | 4.8         | NOT STARTED                          | Brand recognition in feed items                |
| C08-06 | Real data from AuditLog model                          | 4.8         | DONE                                 | `get_recent_audit_events()` queries AuditLog, paginated |


### 4.9 Risk Trend Visualization


| ID     | PRD Requirement                                             | PRD Section | Status                          | Notes                                       |
| ------ | ----------------------------------------------------------- | ----------- | ------------------------------- | ------------------------------------------- |
| C09-01 | Posture score over time (30/60/90 day toggle)                   | 4.9         | DONE (bootstrap) | Trends bootstrap with current real values; daily snapshots pending (B-07, B-08) |
| C09-02 | 4 trend metrics (GPS, DSR volume, coverage, classification) | 4.9         | DONE (bootstrap) | Current values computed from real data; history fills as snapshots accumulate    |
| C09-03 | Annotation markers for significant events                   | 4.9         | NOT STARTED                     | V1 is simple trend lines                    |
| C09-04 | Interactive jurisdiction map                                | 4.9         | DEFERRED                        | V2: heat-mapped regulatory exposure         |
| C09-05 | DashboardSnapshot model for daily snapshots                 | 4.9         | PLANNED                         | New model + migration in fides              |
| C09-06 | Daily Celery task for snapshot capture                      | 4.9         | PLANNED                         | New task in fidesplus                       |


### 4.10 Astralis Agent Activity Panel


| ID     | PRD Requirement                         | PRD Section | Status                               | Notes                                 |
| ------ | --------------------------------------- | ----------- | ------------------------------------ | ------------------------------------- |
| C10-01 | Active PIA conversations count          | 4.10        | NOT STARTED (UI) / PLANNED (backend) | RTK hook exists; no component uses it |
| C10-02 | Awaiting response count                 | 4.10        | NOT STARTED (UI) / PLANNED (backend) | Schema defined in types.ts            |
| C10-03 | Completed assessments count             | 4.10        | NOT STARTED (UI) / PLANNED (backend) | Schema defined in types.ts            |
| C10-04 | Risks identified count                  | 4.10        | NOT STARTED (UI) / PLANNED (backend) | Schema defined in types.ts            |
| C10-05 | Click-through to PIA management         | 4.10        | NOT STARTED                          | Needs route definition                |
| C10-06 | Real data from PrivacyAssessment models | 4.10        | PLANNED                              | Query assessment statuses             |


---

## 5. Navigation & Information Architecture


| ID   | PRD Requirement                                         | PRD Section | Status      | Notes                                       |
| ---- | ------------------------------------------------------- | ----------- | ----------- | ------------------------------------------- |
| N-01 | Sidebar collapsed state (icon-only)                     | 6           | NOT STARTED | Current sidebar does not collapse           |
| N-02 | "Command Center" nav item                               | 6           | NOT STARTED | Currently shows as "Home"                   |
| N-03 | Brand name attribution in product (Helios, Janus, etc.) | 6           | NOT STARTED | Functional labels in nav, brands in content |


---

## 6. Visual Design


| ID   | PRD Requirement                              | PRD Section | Status      | Notes                                |
| ---- | -------------------------------------------- | ----------- | ----------- | ------------------------------------ |
| V-01 | Ant Design component library                 | 7           | DONE        | All cards use fidesui (Ant wrapper)  |
| V-02 | GPS score animation on load                  | 7           | DONE        | `useCountUp` with 800ms ease-out     |
| V-03 | Action queue slide in/out on completion      | 7           | NOT STARTED | No completion animation yet          |
| V-04 | Activity feed fade-in from top               | 7           | NOT STARTED | Activity feed not yet in UI          |
| V-05 | Dimension ring animation on hover            | 7           | DONE        | Radar chart hover tooltips           |
| V-06 | 200-300ms transitions, ease-out curves       | 7           | DONE        | Animations follow these timings      |
| V-07 | Generous whitespace                          | 7           | DONE        | Layout uses Ant gap="large"/"middle" |
| V-08 | Dark mode as polished first-class experience | 7           | IN PROGRESS | Dark mode works but light is default |


---

## 7. Backend Infrastructure


| ID   | PRD Requirement                                              | PRD Section | Status      | Notes                                                  |
| ---- | ------------------------------------------------------------ | ----------- | ----------- | ------------------------------------------------------ |
| B-01 | Real database queries (replace mock/LLM data)                | 11          | DONE        | All endpoints query PrivacyRequest, System, StagedResource, AuditLog models |
| B-02 | Schema alignment (backend matches frontend types)            | 11          | DONE        | All mismatches fixed: `type`, `severity`, `size`, `pages`, `band`, `diff_percent` |
| B-03 | System coverage endpoint                                     | 11          | DONE        | `GET /plus/dashboard/system-coverage` implemented                          |
| B-04 | Redis caching with TTLs                                      | 11          | DONE        | TTL-based: posture 10m, PR 5m, coverage 10m, actions 2m, trends 1h, feed 1m |
| B-05 | Cache warming Celery task                                    | 11          | PLANNED     | Pre-compute expensive aggregations                     |
| B-06 | DashboardRepository (query layer)                            | 11          | DONE        | `service/dashboard/repository.py` with `@with_optional_sync_session`       |
| B-07 | DashboardSnapshot model + migration                          | 11          | PLANNED     | New model for trend data                               |
| B-08 | Daily snapshot Celery task                                   | 11          | PLANNED     | Capture metrics for trend sparklines                   |
| B-09 | Activity event feed/bus                                      | 11 (Q12)    | NOT STARTED | Unified event stream across all modules                |
| B-10 | Real-time updates (WebSocket or polling)                     | 11 (Q13)    | NOT STARTED | Currently no live update mechanism                     |
| B-11 | Performance budget (<2s above-fold)                          | 11 (Q15)    | NOT STARTED | Cache warming helps; need to measure                   |
| B-12 | Notification service (email/Slack routing)                   | 11 (Q16)    | NOT STARTED | V2+ scope                                              |
| B-13 | LLM infrastructure for inline Astralis queries               | 11 (Q17)    | NOT STARTED | V2+ scope; target <3s response                         |
| B-14 | Delegation action execution (agent can approve/close/assign) | 11 (Q18)    | NOT STARTED | V2+ scope; needs audit trail                           |


---

## 8. Sprint Delivery Mapping

### Sprint 1-2 (PRD Section 5)


| PRD Deliverable                    | RTM IDs                                 | Status                          |
| ---------------------------------- | --------------------------------------- | ------------------------------- |
| Dashboard layout architecture      | S-01, S-02, S-03                        | DONE                            |
| GPS initial version (4 dimensions) | R-01, R-02, R-04, C02-01 through C02-05 | DONE |
| Priority Action Queue              | C03-01 through C03-06                   | DONE |
| Quick Stats bar                    | C01-01, C01-02, C01-03                  | DONE |
| DSR Status Panel                   | C04-01 through C04-06                   | DONE |
| System Coverage Panel              | C05-01 through C05-04                   | DONE |
| Sidebar navigation update          | N-01                                    | NOT STARTED                     |
| Role selection                     | P-01                                    | NOT STARTED                     |


### Sprint 3-4 (PRD Section 5)


| PRD Deliverable               | RTM IDs               | Status                               |
| ----------------------------- | --------------------- | ------------------------------------ |
| GPS expanded to 7 dimensions  | R-03                  | NOT STARTED                          |
| AI Readiness Panel            | C06-01 through C06-04 | NOT STARTED                          |
| Consent Health Panel          | C07-01 through C07-05 | NOT STARTED                          |
| Activity Feed                 | C08-01 through C08-06 | NOT STARTED (UI) / DONE (backend)    |
| Risk Cards                    | R-10, R-11            | DONE                                 |
| Astralis Agent Activity Panel | C10-01 through C10-06 | NOT STARTED (UI) / PLANNED (backend) |
| Persona-adaptive ordering     | P-02                  | NOT STARTED                          |
| Steward Inbox                 | P-03, P-04            | NOT STARTED                          |
| Notification bell             | C01-05                | NOT STARTED                          |


### Sprint 5-8 (PRD Section 5)


| PRD Deliverable                      | RTM IDs | Status      |
| ------------------------------------ | ------- | ----------- |
| System topology visualization        | C05-08  | DEFERRED    |
| Jurisdiction risk map                | C09-04  | DEFERRED    |
| GPS trend over time with annotations | C09-03  | NOT STARTED |
| Command palette (Cmd+K)              | C01-04  | NOT STARTED |
| Velocity anomaly detection           | R-14    | DEFERRED    |
| Regulatory delta alerts              | R-14    | DEFERRED    |
| Vendor concentration risk            | R-14    | DEFERRED    |
| Executive summary mode               | -       | NOT STARTED |
| Email/Slack notification integration | B-12    | NOT STARTED |
| Dark mode polished                   | V-08    | IN PROGRESS |


---

## 9. Implementation Plan Phase Mapping


| Plan Phase                | RTM IDs Addressed                          | Description                                                                                            |
| ------------------------- | ------------------------------------------ | ------------------------------------------------------------------------------------------------------ |
| Phase 0: Foundation       | B-01, B-02, B-03, B-06                     | **DONE.** Repository, schema fixes, db session wiring, system-coverage endpoint                        |
| Phase 1: Privacy Requests | C04-01 through C04-08                      | **DONE.** Real DSR data from PrivacyRequest model                                                      |
| Phase 2: System Coverage  | C05-01 through C05-07                      | **DONE.** Real system data from System + StagedResource models                                         |
| Phase 3: Priority Actions | C03-07 through C03-14, R-10, R-13          | **DONE.** Real action items from DSR, classification, steward, system review queries                   |
| Phase 4: GPS Posture      | R-01, R-02, C02-06                         | **DONE.** Real dimension scores via weighted formula                                                   |
| Phase 5: Trends           | C09-01, C09-02, C09-05, C09-06, B-07, B-08 | **PARTIAL.** Bootstrap with real current values. DashboardSnapshot model + Celery task still needed.   |
| Phase 6: Activity Feed    | C08-06, C10-06                             | **DONE.** Real events from AuditLog. Astralis panel returns zeros (needs assessment data).             |
| Phase 7: Tier 2 Co-pilot  | S-05, C00-06, R-06, R-11, C02-07           | **DONE (backend).** Rationales, annotations, briefing from real data. Frontend "how to improve" pending. |
| Phase 8: Caching          | B-04, B-05                                 | **PARTIAL.** TTL-based Redis caching done. Cache warming Celery task still needed.                     |
| Phase 9: Cleanup          | -                                          | **DONE.** Removed /generate, /reset, all LLM mock generators (kept briefing generator).               |


