Summary
FilterSidebar select changes re-render the entire filtered list because the parent owns the filter state.
Affected area
src/components/FilterSidebar.tsx, usePropertySearch
Steps to reproduce
Change a single filter; observe full property list re-renders.
Expected behaviour
Use useReducer scoped to the sidebar, or memoize heavy children.
Acceptance criteria
Summary
FilterSidebarselect changes re-render the entire filtered list because the parent owns the filter state.Affected area
src/components/FilterSidebar.tsx,usePropertySearchSteps to reproduce
Change a single filter; observe full property list re-renders.
Expected behaviour
Use
useReducerscoped to the sidebar, or memoize heavy children.Acceptance criteria