From e2409183f33483ee9ef84c7768fef90aa241473b Mon Sep 17 00:00:00 2001 From: A Charlwood Date: Fri, 13 Feb 2026 17:28:16 +0000 Subject: [PATCH] Update progress: Task 12 completed (LastConsultation tile) --- Ralph/IMPLEMENTATION_PLAN.md | 12 ++++++------ Ralph/progress.txt | 27 +++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 6 deletions(-) diff --git a/Ralph/IMPLEMENTATION_PLAN.md b/Ralph/IMPLEMENTATION_PLAN.md index 7657af8..fd18a65 100644 --- a/Ralph/IMPLEMENTATION_PLAN.md +++ b/Ralph/IMPLEMENTATION_PLAN.md @@ -112,12 +112,12 @@ Replace the "CareerRecord PMR" sidebar-nav + view-switching interface with a til #### Task 12: Build LastConsultation tile > Detail: `Ralph/refs/ref-06-bottom-tiles.md` (LastConsultation section) -- [ ] Create `src/components/tiles/LastConsultationTile.tsx` -- [ ] Full-width card -- [ ] Header info row (Date, Org, Type, Band) -- [ ] Role title + achievement bullet list -- [ ] Data from first entry in `src/data/consultations.ts` -- [ ] Run quality checks +- [x] Create `src/components/tiles/LastConsultationTile.tsx` +- [x] Full-width card +- [x] Header info row (Date, Org, Type, Band) +- [x] Role title + achievement bullet list +- [x] Data from first entry in `src/data/consultations.ts` +- [x] Run quality checks #### Task 13: Build CareerActivity tile > Detail: `Ralph/refs/ref-06-bottom-tiles.md` (CareerActivity section) diff --git a/Ralph/progress.txt b/Ralph/progress.txt index c4c231b..91577b7 100644 --- a/Ralph/progress.txt +++ b/Ralph/progress.txt @@ -292,3 +292,30 @@ **Quality checks:** typecheck ✓, lint ✓ (1 pre-existing warning), build ✓ **Visual review:** Skipped — no browser tools available. Will verify visually after multiple tiles are in place. + +### Iteration 10 — Task 12: Build LastConsultation tile +**Status:** Complete +**Changes:** +- Created `src/components/tiles/LastConsultationTile.tsx` — full-width card displaying most recent career role + - CardHeader: green dot + "LAST CONSULTATION" + "Most recent role" right text + - Header info row: Four-field flex layout with Date, Organisation, Type (employment), Band + - Each field: 10px uppercase label (tertiary) + 11.5px 600-weight value (primary) + - 14px bottom margin + 14px bottom padding + border-light bottom border separates header from content + - Role title: 13.5px, 600 weight, accent color (#0D6E6E), 12px bottom margin + - Bullet list: custom list with 5px accent-colored dots (50% opacity), 16px left padding, 7px gap, 12.5px text, 1.5 line-height + - Data from `consultations[0]` (most recent role) — date, organization, role, examination array +- Updated `src/components/DashboardLayout.tsx` — imported and rendered LastConsultationTile below CoreSkillsTile +- Helper functions for data formatting: + - `formatDate()`: Converts "14 May 2025" → "May 2025" format + - `getEmploymentType()`: Returns "Permanent · Full-time" for ICB roles (based on CV context) + - `getBand()`: Returns "8a" for Head roles (senior ICB positions) +**Learnings:** +- The ref spec's bullets didn't match the actual consultations[0].examination array — used the actual data from the source file (source of truth principle) +- The examination array bullets are concise and metrics-focused: "Identified £14.6M...", "Built Python-based algorithm...", "Automated incentive scheme..." +- Employment Type and Band are derived from context/role title since they're not explicit fields in the Consultation interface +- The bullet pseudo-element uses `position: absolute` with `top: 7px` to align with the first line of text (accounts for 1.5 line-height) +- Green dot color for the CardHeader indicates clinical/professional content (matches status color system) +- This tile provides a snapshot of the current/most recent role — full career history will be in CareerActivity tile (Task 13) +**Quality checks:** typecheck ✓, lint ✓ (1 pre-existing warning), build ✓ +**Visual review:** Skipped — no browser tools available. Will verify visually after multiple tiles are in place. +