TLDR: I suggested that StreetComplete should add and update check_date more often; @westnordost is happy to do this provided there is community buy-in.
Current app behaviour:
If a poi has not been modified for a given amount of time (it varies by poi type, I believe a shop is 2 years) it will prompt a quest asking ‘Is this still here?’ - this will add check_date=today’s date if the user answers yes. This tag is added only when no other tags are modified, as there is no way to bump the last modified date of a node without moving it or updating the tags.
Example applications of this tag:
CoMaps has recently started surfacing this tag, displaying “Existence confirmed X weeks ago” in relevant poi info panels (see CoMaps now supports check_date and check_date:opening_hours). This can help reassure CoMaps users that the poi they are navigating to still existed at a certain point in time. The tag can also be used to indicate areas where shop data has become stale, and could do with a survey.
The problem:
As per the original consensus from 2020 (discussed here on the mailing list The Tagging July 2020 Archive by thread), StreetComplete only adds check_date when an ‘Is this still here?’ quest is answered. It does not add a check_date when a poi is created via an overlay, or any other quest about a poi is answered. This means that there are many scenarios where StreetComplete modifies a poi but does not update check_date, despite the source of the change being a survey. Consequently, data consumers such as CoMaps do not know when such features were last confirmed existing. They could use the last modified date as an indication, this is often not useful as pois often get edited from aerial imagery or simply have tags correct, neither of which confirm the continued existence of that poi. Furthermore, StreetComplete cannot offer an ‘Is this still here?’ quest for pois that were recently modified as part of automated fixes (but have not been surveyed in many years), as it looks at the last modification date when generating this quest.
Example problematic scenarios:
- A shop=hairdresser node has not been modified for 10 years. The user is prompted the question “Which customers visit this hairdresser?”. They answer ‘male only’ so male=yes is added (or whatever the exact tag is). No check_date is added or updated, so data consumers like CoMaps do not know if the last modified date was a result of a survey or not. If StreetComplete added check_date when adding male=yes, no assumptions would have to be made.
- An amenity=pub node has not been modified for three years. Someone then adds a missing addr:city tag based on the pub’s location, bringing the last modified date to today. No ‘Is this still here?’ quest will be shown for the next two years now (depending on app settings), meaning data consumers can only assume when the pub was last confirmed to be open. If StreetComplete looked at check_date rather than last modified date, it could ask ‘Is this still here?’ tomorrow.
See also the github issue I opened suggesting this change (discussion is preferred here and not on github): add/update check_date when answering quests or adding new pois · Issue #6832 · streetcomplete/StreetComplete · GitHub
The proposal:
StreetComplete should add check_date to a poi when it is created, and should add or update check_date whenever any other quest is answered about a poi. It should use check_date to generate ‘Is this still here?’ quests, instead of the last modified date.
Please share any concerns you might have with an expansion of the use of check_date below, or if you have an alternate solution to the issues raised. If I have made any errors in describing app behaviour or quest rules please raise those also and I will correct them. I’m sure there may be some edge cases where check_date isn’t necessary to be updated, which would no doubt be accounted for should the community support an expansion in the use of check_date.
Poll for tracking consensus:
- StreetComplete should add/update check_date when a poi is created AND when it is modified
- StreetComplete should add check_date when a poi is created but NOT when it is modified
- StreetComplete should add/update check_date when a poi is modified but NOT when it is created
- StreetComplete should continue only adding check_date when a user answers an “Is this still here” quest
- Another solution should be found
Once again thanks to all for reading and happy StreetCompleting!
LGS