Files
Wegwichtel/docs/agents/TODO-STRECKENDUPLIKATE.md
T
Florian Zumpe 9c4d5f6324
Sonarqube Scanner / Prepare environment (push) Successful in 7s
Sonarqube Scanner / Build and test (push) Successful in 23s
Sonarqube Scanner / SonarQube analysis (push) Successful in 56s
Sonarqube Scanner / Deploy to Server (push) Successful in 8s
editor overhaul
2026-10-18 14:26:25 +02:00

31 lines
1.7 KiB
Markdown

# TODO: Mögliche Streckenduplikate in der Moderation prüfen
Am 5. Oktober 2026 vorgemerkt, noch nicht implementiert.
## Ziel
Online mögliche Duplikate zur manuellen Moderation anzeigen. Erneute Einreichungen
nach Ablehnung oder Entfernung bleiben erlaubt. Ein Treffer darf nicht automatisch
eine Freigabe übernehmen, eine alte Strecke wiederherstellen oder einen Upload blockieren.
## Lösungsansätze
- SHA-256 der GPX-Datei für bytegenau identische Dateien berechnen. Änderungen an
XML-Schreibweise, Zeitstempeln oder Leerzeichen ändern bereits diese Prüfsumme.
- Zusätzlich eine stabile Darstellung der Routen- und Stationskoordinaten hashen.
XML-Schreibweise, Zeitstempel, Titel und interne IDs nicht als Wegidentität werten.
Reihenfolge, Rundung, fehlende Koordinaten und Stationsanker ausdrücklich definieren.
- Für GPS-Abweichungen einen geometrischen Ähnlichkeitsvergleich evaluieren.
Zunächst Kandidaten über die vorhandenen Min-/Max-Grenzen auswählen, dann
Wegverlauf, Start, Ende, Länge und Stationen mit festgelegter Toleranz vergleichen.
- Gleiche Wege und gleiche Inhalte unterscheiden: Derselbe Weg kann andere
Aufgaben, Bilder und Tonaufnahmen enthalten.
- Betroffene IDs, Status und Grund der Ähnlichkeit in der Moderation anzeigen.
Entscheiden, ob Papierkorb-Einträge in den Vergleich einbezogen werden.
- Fehlende GPS-Daten berücksichtigen; leere Dateien nicht pauschal als sinnvolle
Duplikate werten. Tests für identische Dateien, XML-/Zeitabweichungen, GPS-Rauschen,
Rückwege, andere Reihenfolge und Stationen sowie erneute Einreichungen vorsehen.
Die GPX-Datei bleibt Datenquelle; keine zweite vollständige Geometrie in SQLite
ablegen. Hashes sind Vergleichswerte, kein Berechtigungs- oder Urhebernachweis.