RfC: deprecate hashtag-only changeset comments

Yes, we should be more cautious about modifications and deletions, so the requirements on changeset comments are stricter (especially deletions)

A small tweak to the Organized Editing Guidelines which could be useful in this context is to change ā€œChangeset comments should includeā€ to ā€œChangesets should includeā€. As written, the OEG currently do not allow the hashtags to be put into the changesetā€™s hashtags=* key.

2 Likes

Anton, in order to retrieve information about what ā€œhotosm-project-14894ā€ is you will have to: (1) know which URL to go to, (2) log in with your OSM account, (3) grant the tasking manager permission to ā€œmodify the mapā€ in your name (you cannot deselect that option - you will only be given information if you grant this permission). I think this is too much of a hurdle.

12 Likes

I am one of those that first introduced #hashtags some 11 years ago for the possibility to provide contributor statistics for Community managed Disaster Responses I coordinated at the time and published statistics and published analysis to better progress with community mapping in this context.

I hope you will pardon me ! With time, HOTOSM taskmanager projects have slipped to be far away from the community (management, discussions, information) and comments are more for promotion of various partners.

My OSM Diary OSM Contributors Outlook - The Pulse of OpenStreetMap Contributors, refreshed stats about the OSM Survival curbe. We observe such curve every year with the majority of contributors leaving after a very short period. This is particularly through for events organized using the Tasking manager.

I agree in general with comments about restructuring the metadata. and dont think either that we should focus on contributors. To better document the changesets, we should focus on organized editing organisers and metadata provided by the tasking manager and similar tools via API to editors such as iD and JOSM. And we should insist for better collaboration / discussion with the community.

The metadata could be restructured as :

  • host tag : link to the project should be more precise (not #hotosm-project-14894 )
    https://tasks.hotosm.org/projects/14894 or
    https://tasks.hotosm.org/projects/14894/#task which would link to the #task area attributed for mapping
  • hahshtags : as previously said, to group all hashtags
  • comment tag : for usual mapping context comments

And yes, HotOSM should provide a more transparent access to the Tasking manager content and not place these infos behind a user/connection wall to simply view detailed content. Other then thaqt, the API https://tasking-manager-tm4-production-api.hotosm.org/api/v2 contains valuable stats but iit is not easy to access it.

12 Likes

I sense a hashtag-reformatting browser extension coming our wayā€¦

I would have said they were both as bad as each other, because neither of them explain what the mapper actually did! :roll_eyes:

Yes, you can hunt down that project & find out that it was supposed to concentrate on damaged buildings, but while doing so, did they also realign a road, mark a bridge as destroyed & so on?

2 Likes

I think you are on the right track, but the actions are wrong.

If we decide that hashtag-only changeset comments (or empty changeset commentsā€¦ or too-short changeset comments) are unacceptable, then the API should simply reject the edit with an HTTP 400 response. I think it would be pretty silly to allow an edit and then revert it. Of course we should give due notice to all known editor developers of the change.

Iā€™m a firm believer in ā€œtoolsā€ rather than ā€œrulesā€. We can sit here until weā€™re blue in the face hashing out (haha) what an acceptable changeset comment consists of, but it would be far more beneficial to the community if specific known cases of disallowable content were rejected by the server.

4 Likes

I wholeheartedly agree there, but one doesnā€™t contradict the other. So while it would generally be nice if the API rejected changesets that are definitely wrong, if the maintainers canā€™t manage to implement this in time, manual actions are probably a way to go forward. But itā€™s definitely better to reject the changeset as a whole, because chances are that we will then probably get the changes with description instead of no changes at all.

Whatā€™s odd to me about people using hashtags in changeset comments is that they arenā€™t natively supported by the OSM website, they are not clickable or searchable. When I see something like #starbucksmapping I expect to be able to click it and be taken to a list of all changesets using that hashtag, or ideally, a page that tells me what it means (e.g. a Wiki page describing an organised edit).

When people started using hashtags in tweets, Twitter implemented hashtag search. Does OSM need the same?

9 Likes

I disagree. A sustained campaign where the DWG tries to enforce a changeset standard in this way, based on the scant discussion of a handful of contributors here, will only result in hurt feelings and unnecessary work. If we want to disallow certain categories of changeset comments, it is better to wait for however long it takes to implement this on the server side.

3 Likes

The problem with ā€œimplementation server sideā€ without communication first is that people will get understandably upset.

Maybe an good idea for everyone here would be to add a few ā€œhello and welcome, and if if youā€™ve got any questions please donā€™t hesitate to askā€ comments to new changesets?

3 Likes

And even this might be overkill. iD and JOSM already have a dedicated option for specifying hashtags in their APIs. The Tasking Manager needs to make use of these options and OSM Stats needs to query changesets based on hashtag, as OSMCha does. Maybe there are some miscellaneous tools Iā€™m unaware of.

If this happens, then pretty much any hashtag in comment will be the result of someone intentionally inputting it manually, # and all. This will cause hashtag-only changeset comments to slow to a trickle; I donā€™t think theyā€™ll bother anyone enough for anyone to want to push for a hard error in the OSM API or proceed with a passive-aggressive eradication campaign.

1 Like

The solution is more to control the content exchanged between the Tasking and editors such as iD or JOSM via the Remote Control API.

Selecting task 315 from the hotosm project 15352 to edit either with iD or JOSM, the following tags were transferred to the editors via the API
source: EsriWorldImagery
comment: #hotosm-project-15352 #missingmaps #2023sudanconflict
hashtag: #hotosm-project-15352 #missingmaps #2023sudanconflict

The comment should be empty and reference to the project would be more usefull using a host tag with reference to the individual task for the proejct.
host=HOT Tasking Manager (https://tasks.hotosm.org/projects/15352/tasks/?search=315 as referenced by the tasking manager)
But HOT should remove the requirement to use an account (plus asking your email and your gender) to simply pass the Wall and view this task.

2 Likes

The API will have to reject changeset create/update calls with an invalid/missing comment tag. Those happen before the actual edit (or maybe after in case of updates). Youā€™ll have to convince both osm-website and cgimap maintainers to go along with it. Itā€™s easier to run some auto block script.

2 Likes

When you set up a new project in the Tasking Manager, one of the first settings is for customizing the changeset comment that it prefills in each participantā€™s preferred editor. (The participant can customize it further.) This default default changeset comment includes a hashtag, but the instructions ask the project creator to add human-readable text too. This default default hashtag is better than nothing, but it probably makes some project creators think the human-readable text is optional:

This is not normally a requirement. Plenty of projects are accessible without logging in. Perhaps the specific project youā€™re looking at is marked as private. Sometimes people use private tasking manager projects as a sort of personal to-do list ā€“ itā€™s less error-prone than my usual method of going through Overpass turbo results. I suppose this capability can be misused by teams to avoid public scrutiny, but the more likely explanation is that project creators probably think they need to make the project private in order to limit its participants to a small group.

The Tasking Manager asks you for an e-mail address and gender when you create an account. It doesnā€™t send this information to the projectā€™s creator. The e-mail address does allow the Tasking Manager to send you notifications by e-mail, similar to how OSM changeset comments work. If you prefer not to share your gender, then you can choose ā€œPrefer not to sayā€:

To bring things full circle:

So here are some next steps:

  1. Reach a consensus here about whether hashtags belong in comment or whether they can be relegated to hashtags.
  2. Document this consensus on the wiki.
  3. Update the Organized Editing Guidelines to allow hashtags in hashtags.
  4. Update OSM Stats to parse hashtags instead of comment. This might be a trivial change unless Iā€™m missing something.
  5. Update the Tasking Manager to remove hashtags from the projectā€™s preferred changeset comment and send them to iD and JOSM as hashtags instead. Thereā€™s already some code to extract the ā€œdefault changeset commentā€, which is the hashtag that identifies the project by number.
  6. Kick back and relax!
8 Likes

iD doesnā€™t move them, it copies them. Hashtags will still be kept in the comment.

Removing hastags from comments in editors is one of possible solutions.

3 Likes

This is true if you manually enter a hashtag or if the Tasking Manager has passed in a hashtag as part of the comment (which it does). However, if the Tasking Manager were to use the dedicated hashtags URL parameter, the hashtags would appear only in hashtags, not comment.

If you go to this iD preview that has hashtags set, move the hipster-named cafĆ©, and click Save, youā€™ll see the hashtags prefilled in the Hashtags field, but the Changeset Comment field will be empty and the Upload button will be disabled:

I havenā€™t verified whether JOSM behaves the same way when hashtags is passed in via the remote control protocol.

Once iDā€™s clients decouple hashtags from changeset comments, I think it would be pretty safe to remove the copying functionality. Anyone who manually enters a #hashtag in the changeset comment is probably doing so ironically, or more likely referring to a changeset ID, note ID, IRC channel, or Slack channel.

1 Like

Whatever gets implemented, or nothing at all, Iā€™ll learn to live with it. If I can put up with freetext anonymous useless notes, I can totally put up with hashtag changeset comments.

2 Likes

Ironically, I tested in JOSM entering a hashtags tag but no source tag. It was erased after I pressed to move to next line. I tested renaming an other tag to hashtags, still no source. When I sent my edit, without warning error for empty source, JOSM sent my edit to the API with no hashtags and no source !

It seems like thereā€™s plenty of room for improvement all around for how various tools handle hashtags. I mostly find they just add noise, but I can see their benefit when used judiciously. Moving them to a separate field on the changeset seems best.

Iā€™ll share a funny experience I had recently while using waterwaymap.org to connect gaps in waterways. I had clicked the ā€œEdit in JOSMā€ button and when I went to upload my changes I saw that it had pre-populated #RiverMapping in the comment field. I added Connecting waterways to the comment and clicked upload. I submitted several more changesets but left the comment alone as I was doing the same thing in all of them. Then I added a completely new stream so I changed my comment to add stream. I didnā€™t notice until after uploading that the full comment had become add stream #RiverMapping #RiverMapping #RiverMapping #RiverMapping #RiverMapping #RiverMapping. I guess future mappers will get the impression I was really getting excited about river mapping :sweat_smile:. I donā€™t know why this happened, but it seems with every upload, the hashtag was replicated.