Markers reflect current filtered result set; filter changes update markers
Why it matters
When map markers do not update after a filter change, users see stale, incorrect data — listings that do not match their criteria appear pinned to the map while the sidebar list updates. This is a functional-suitability violation under ISO 25010:2011 and a concrete data-integrity failure: the map and the list are out of sync, making the product untrustworthy. Users applying category or distance filters to find, say, open restaurants or accessible venues receive misleading results that can send them to wrong locations. The defect is critical because it silently corrupts the user's decision-making.
Severity rationale
Critical because desynchronized markers and filter state produce objectively wrong results that users act on, making the directory functionally unreliable for its core purpose.
Remediation
Subscribe the marker layer directly to the filter state variable so any filter change triggers a marker refresh. The marker update must run synchronously within the same render cycle as the filter change — not on a separate effect with a delay.
function Map({ filters }) {
const map = useMap();
useEffect(() => {
if (!map) return;
const filtered = listings.filter(l =>
filters.category ? l.category === filters.category : true
);
updateMarkers(map, filtered); // replaces all existing markers
}, [filters, map]);
return <div id="map" />;
}
Ensure updateMarkers clears all existing markers before adding filtered ones — partial updates where old markers linger are the most common cause of the desync failure.
DetectionPro
The detection method for this pattern is part of AuditBuffet Pro.
The full method (what to look for, pass and fail conditions, and how results get reported) ships inside the Map & Location Integration Audit. The pattern definition, severity rationale, and remediation remain openly licensed under CC-BY-4.0.
External references
- iso-25010:2011 · functional-suitability — Functional Correctness — marker state consistency with filter state
Taxons
History
- 2026-04-18·v1.0.0·Initial import from directory-map-location·automated