diff --git a/docs/memory/component-registry.md b/docs/memory/component-registry.md index b8679b5..9e4b896 100644 --- a/docs/memory/component-registry.md +++ b/docs/memory/component-registry.md @@ -54,7 +54,7 @@ duplicates) and MUST update it after completing one. | ServiceSelector | done | ServiceOption × n + Typography + Button | Single-select service panel for arrangement flow. Heading + subheading + ServiceOption list (radiogroup) + optional continue Button. Manages selection state via selectedId/onSelect. maxDescriptionLines pass-through. | | PricingTable | planned | PriceCard × n + Typography | Comparative pricing display | | PackageDetail | done | LineItem × n + Typography + Button + Divider | Right-side package detail panel. Warm header band (surface.warm) with "Package" overline, name, price (brand colour), Make Arrangement + Compare (with loading) buttons. Sections (before total) + total + extras (after total, with subtext). T&C grey footer. Audit: 19/20. Maps to Figma Package Select (5405:181955). | -| FuneralFinder | review | Typography + Button + Chip + Input + custom OptionCard | Hero search widget. Procedural stepped flow: Intent → Planning For (conditional) → Funeral Type (chips, dynamic) → Location → CTA. Brand checkmarks on completion, edit icon to revert, radiogroup semantics. Audit: 17/20 → fixes applied. | +| FuneralFinder | done | Typography + Button + Chip + Input + Divider + Link + custom ChoiceCard/TypeCard/CompletedRow/StepHeading | Hero search widget v1. Full stepped conversational flow: Intent → Planning For (conditional) → Funeral Type + preferences (optional themes) → Service preference (conditional, auto-advance) → Location + CTA (always visible). Smart defaults — minimum search: intent + location. Types: Cremation, Burial, Water Burial (QLD only), Explore All. Service: With/No/Flexible. Themes: eco-friendly, budget-friendly, religious specialisation. Loading prop, location validation. Audit: 14/20 (Good). Critique: 29/40 (Good). Future: progress indicator, roving tabindex, location autocomplete. | | ArrangementForm | planned | StepIndicator + ServiceSelector + AddOnOption + Button + Typography | Multi-step arrangement wizard. Deferred — build remaining atoms/molecules first. | | Navigation | done | AppBar + Link + IconButton + Button + Divider + Drawer | Responsive site header. Desktop: logo left, links right, optional CTA. Mobile: hamburger + drawer with nav items, CTA, help footer. Sticky, grey surface bg (surface.subtle). Real FA logo from brandassets/. Maps to Figma Main Nav (14:108) + Mobile Header (2391:41508). | | Footer | done | Link × n + Typography + Divider + Container + Grid | Dark espresso (brand.950) site footer. Logo + tagline + contact (phone/email) + link group columns + legal bar. Semantic HTML (footer, nav, ul). Critique: 38/40 (Excellent). | diff --git a/docs/memory/session-log.md b/docs/memory/session-log.md index 796f67e..a9c59f6 100644 --- a/docs/memory/session-log.md +++ b/docs/memory/session-log.md @@ -23,6 +23,45 @@ Each entry follows this structure: ## Sessions +### Session 2026-03-26c — FuneralFinder v1 refinement and completion + +**Agent(s):** Claude Opus 4.6 (1M context) + +**Work completed:** +- Redesigned FuneralFinder from a "dump everything in step 3" pattern to a full stepped conversational flow +- Every decision is now its own step with CompletedRow collapse (intent → planning-for → type+preferences → service → location+CTA) +- CTA ("Find funeral providers") and location input are always visible at the bottom — not gated behind steps +- Implemented smart defaults: minimum search requirements are intent + location; type/service/themes default to "show all" +- Added funeral type options: Cremation, Burial, Water Burial (QLD only), Explore All (as a proper TypeCard) +- Added service preference step (conditional): With a service / No service / I'm flexible +- Added theme preferences (eco-friendly, budget-friendly, religious specialisation) as optional sub-option within type step +- Created StepHeading sub-component (bodyLg, centered) for clear hierarchy vs card labels (body1/body2) +- Added loading prop for CTA button, location validation (3+ chars with error state) +- Added Divider under subheading, h2 display heading, generous CompletedRow spacing (py: 1.5) +- Fixed accessibility: aria-label on Change links, role="alert" on intent prompt, 44px touch targets on all chips +- Removed "Take your time" empathetic message per user preference +- Renamed "ceremony" → "service" throughout, "Without (direct)" → "No service" +- Removed TypeCard descriptions for standard types (Cremation, Burial don't need them) +- Multiple audit/critique cycles: final scores Audit 14/20 (Good), Critique 29/40 (Good) + +**Decisions made:** +- CTA always visible with smart defaults — users can skip optional steps and search with just intent + location +- Stepped flow continues through ALL decisions (not just steps 1-2 like the previous version) +- Theme preferences belong in the type step as a sub-option, not in the location step +- "Where are you looking?" (not "located") to allow searching outside own area +- Step headings use bodyLg centered for visual hierarchy distinct from card labels + +**Open questions:** +- Progress indicator (Step X of Y) — flagged by critique as P2, deferred. Variable step count makes implementation non-trivial. +- Roving tabindex for radiogroups — flagged by audit as P0, deferred. Requires arrow-key handler + tabindex management. +- Location autocomplete — flagged by critique as P2, deferred. Would need suburb/postcode API integration. +- CSS var vs MUI theme accessor consistency — flagged by audit, deferred. Architectural choice to address system-wide. + +**Next steps:** +- FuneralFinder v1 is complete and approved +- Consider building the homepage hero composition as a standalone organism or page template +- ArrangementForm organism is next planned organism (multi-step wizard with StepIndicator) + ### Session 2026-03-24 — Project scaffold setup and hygiene **Agent(s):** Manual (no agents invoked — setup phase)