The old identity dedupe keyed on `name|place` where place was a single field (geohash OR location OR city, first non-empty). Two copies of the same spot — one carrying a geohash, one carrying only a city — produced different keys and both survived (the Yellow Park duplicate). Now: - Name is reduced to a signature that strips trailing generic words (skatepark/park/plaza/spot/diy/...) and leading articles, so "Yellow Park", "Yellow Park Skatepark" and "Yellow Park " collapse to "yellow". - Places are compared on human-readable tokens (location/city/country) only; the opaque geohash is excluded. An empty place on either side is treated as a wildcard, so a geohash-only copy still merges with a "Bangkok" copy. - Genuinely different spots (different name signatures, or non-empty places with no shared token) are still kept separate; single-word names are preserved so generic names don't over-collapse. Co-authored-by: shakespeare.diy <assistant@shakespeare.diy> |
||
|---|---|---|
| .. | ||
| components | ||
| contexts | ||
| hooks | ||
| i18n | ||
| lib | ||
| pages | ||
| test | ||
| App.test.tsx | ||
| App.tsx | ||
| AppRouter.tsx | ||
| index.css | ||
| main.tsx | ||
| vite-env.d.ts | ||