Part of #285 (Group D — robustness).
Problem
There is a second, genuinely separate "progress report" feature (Report/ReportData) whose backend exists but has no UI caller — it's orphaned. Meanwhile the UI's "progress report" button actually edits a TherapyNote.
Evidence
prisma/schema.prisma:193-208 — Report + ReportData (dated question/answer sets, Patient.ProgressReports).
server/api/profile/report.post.ts (THERAPIST + isAssignedTherapist) writes a Report — but grep across pages/, components/, composables/ for profile/report finds no caller, and there is no read endpoint for Report.
- The UI's "progress report" modal is
components/therapy/ReportModal.vue, which despite its name POSTs to /api/session/notes (a TherapyNote), not to report.post.ts.
Impact
P2 (dead code / confusion). Either a planned feature was never wired, or it's redundant with TherapyNote.
Proposed approach
- Decide whether
Report/progress-reports is a real feature distinct from TherapyNote.
- If yes: build the UI (create + read) and a GET endpoint.
- If no: remove
report.post.ts, the models, and rename ReportModal.vue to reflect that it edits notes (see D14).
Acceptance criteria
Part of #285 (Group D — robustness).
Problem
There is a second, genuinely separate "progress report" feature (
Report/ReportData) whose backend exists but has no UI caller — it's orphaned. Meanwhile the UI's "progress report" button actually edits aTherapyNote.Evidence
prisma/schema.prisma:193-208—Report+ReportData(dated question/answer sets,Patient.ProgressReports).server/api/profile/report.post.ts(THERAPIST +isAssignedTherapist) writes aReport— but grep acrosspages/,components/,composables/forprofile/reportfinds no caller, and there is no read endpoint forReport.components/therapy/ReportModal.vue, which despite its name POSTs to/api/session/notes(aTherapyNote), not toreport.post.ts.Impact
P2 (dead code / confusion). Either a planned feature was never wired, or it's redundant with
TherapyNote.Proposed approach
Report/progress-reports is a real feature distinct fromTherapyNote.report.post.ts, the models, and renameReportModal.vueto reflect that it edits notes (see D14).Acceptance criteria
Reportis either wired end-to-end or removed.