Progress update: Mark Task 10 complete and log iteration

This commit is contained in:
2026-02-11 02:05:38 +00:00
parent 53b633bfd7
commit e73a1c6cb8
2 changed files with 31 additions and 1 deletions
+1 -1
View File
@@ -143,7 +143,7 @@ src/
Create `src/components/views/ProblemsView.tsx`. Two sections: Active Problems and Resolved Problems. Table columns: Status (traffic light dot), Code (SNOMED-style in Geist Mono), Problem description, Since/Resolved date, Outcome (for resolved). Traffic lights: 8px circles — green (resolved/current), amber (in progress), gray (inactive/historical). Active problems: £220M budget oversight, SQL transformation, data literacy programme. Resolved problems: 8 achievements with specific outcomes ("Python algorithm: 14,000 pts, £2.6M/yr", "70% reduction, 200hrs saved", etc.). Click row to expand full narrative with "linked consultations" navigation. Create `src/components/views/ProblemsView.tsx`. Two sections: Active Problems and Resolved Problems. Table columns: Status (traffic light dot), Code (SNOMED-style in Geist Mono), Problem description, Since/Resolved date, Outcome (for resolved). Traffic lights: 8px circles — green (resolved/current), amber (in progress), gray (inactive/historical). Active problems: £220M budget oversight, SQL transformation, data literacy programme. Resolved problems: 8 achievements with specific outcomes ("Python algorithm: 14,000 pts, £2.6M/yr", "70% reduction, 200hrs saved", etc.). Click row to expand full narrative with "linked consultations" navigation.
- [ ] **Task 10: Build InvestigationsView with results panel** - [x] **Task 10: Build InvestigationsView with results panel**
Create `src/components/views/InvestigationsView.tsx`. Projects presented as diagnostic investigations. Table: Test Name | Requested | Status | Result. Status badges: Complete (green dot), Ongoing (amber dot), Live (pulsing green dot for PharMetrics). 5 investigations: PharMetrics Interactive Platform, Patient Switching Algorithm, Blueteq Generator, CD Monitoring System, Sankey Chart Analysis Tool. Click row to expand "results panel" with tree-indented structure: Date Requested, Date Reported, Status, Requesting Clinician, Methodology, Results, Tech Stack. PharMetrics has "View Results" button linking to medicines.charlwood.xyz. Create `src/components/views/InvestigationsView.tsx`. Projects presented as diagnostic investigations. Table: Test Name | Requested | Status | Result. Status badges: Complete (green dot), Ongoing (amber dot), Live (pulsing green dot for PharMetrics). 5 investigations: PharMetrics Interactive Platform, Patient Switching Algorithm, Blueteq Generator, CD Monitoring System, Sankey Chart Analysis Tool. Click row to expand "results panel" with tree-indented structure: Date Requested, Date Reported, Status, Requesting Clinician, Methodology, Results, Tech Stack. PharMetrics has "View Results" button linking to medicines.charlwood.xyz.
+30
View File
@@ -306,3 +306,33 @@ This is a complete redesign of the CV presentation, moving from the ECG animatio
- `problem.linkedConsultations` needed null coalescing since it's optional in the type - `problem.linkedConsultations` needed null coalescing since it's optional in the type
- Height animation uses refs to measure content height for smooth expansion - Height animation uses refs to measure content height for smooth expansion
- Linked consultations use external link icon to indicate navigation - Linked consultations use external link icon to indicate navigation
### Iteration 10 — Task 10: Build InvestigationsView with results panel
- **Completed**: Task 10 - Created InvestigationsView with expandable rows and results panel
- **Files created**:
- `src/components/views/InvestigationsView.tsx` - Full Investigations view with 5 project entries
- **Files modified**:
- `src/components/PMRInterface.tsx` - Added InvestigationsView to renderView switch
- **Design decisions**:
- Status badges: Complete (green dot), Ongoing (amber dot), Live (pulsing green dot with ping animation)
- Table columns: Test Name, Requested, Status, Result
- Expandable rows: click to show tree-indented results panel
- Results panel uses key-value layout with fixed-width labels (w-40) for alignment
- Methodology and Results sections display multi-line content
- Tech Stack displayed as comma-separated list
- PharMetrics has "View Results" button linking to medicines.charlwood.xyz
- Height animation: 200ms ease-out for expand/collapse
- Accordion behavior: only one row expanded at a time (global)
- Hover state: blue-50 (#EFF6FF) background tint
- **Accessibility**:
- Proper semantic `<table>` markup with `scope="col"` on headers
- `aria-expanded` on clickable rows
- Status badges have `aria-label` with status text
- Traffic lights always accompanied by text labels
- External link has proper target="_blank" rel="noopener noreferrer"
- Respects `prefers-reduced-motion`: height transition disabled
- **Quality checks**: `npm run typecheck` ✓, `npm run lint` ✓, `npm run build` ✓
- **Learnings**:
- Live status uses Tailwind animate-ping for pulsing effect (requires relative container)
- Tree-indented structure uses flex with fixed-width labels for clean alignment
- Results as bullet list provides better readability than comma-separated text