# Roadmap and critical path

```mermaid
flowchart LR
  P01["P01 Foundation"] --> P02["P02 Requirements"]
  P01 --> P03["P03 Data & storage"]
  P02 --> P04["P04 Responsive shell"]
  P03 --> P05["P05 Goal CRUD"]
  P04 --> P05
  P05 --> P06["P06 Task CRUD"]
  P06 --> P07["P07 Dashboard"]
  P06 --> P08["P08 Search/filter"]
  P03 --> P09["P09 Backup/recovery"]
  P06 --> P09
  P07 --> P10["P10 Accessibility & states"]
  P08 --> P10
  P09 --> P10
  P10 --> P11["P11 Automated tests"]
  P11 --> P12["P12 Responsive pass"]
  P12 --> P13["P13 Browser/device pass"]
  P13 --> P14["P14 Evidence package"]
  classDef critical fill:#6257d9,color:#fff,stroke:#4c43b8,stroke-width:2px;
  class P01,P02,P03,P04,P05,P06,P07,P10,P11,P12,P13,P14 critical;
```

**Critical path:** P01 → P02/P03 → P04 → P05 → P06 → P07 → P10 → P11 → P12 → P13 → P14. P08 and P09 were parallel branches converging at P10.

| Milestone | Exit checkpoint | Result |
|---|---|---|
| M1 Planned | Requirements, backlog and dependencies recorded | Complete |
| M2 Foundation | App shell, model and storage adapter working | Complete |
| M3 MVP | Goal/task CRUD persists through reload | Complete |
| M4 Feature complete | Dashboard, filters, backup and errors complete | Complete |
| M5 Test complete | Automated browser/viewports green; Edge/devices recorded | Partially complete: manual rows pending |
| M6 Evidence complete | Word/PDF packs rendered and records linked | Complete, pending appendix replacements |

The manual sessions remain a release checkpoint for the final assessor copy, even though the application and automated evidence package are complete.
