openstreetmap / openstreetmap-website

The Rails application that powers OpenStreetMap
https://www.openstreetmap.org/
GNU General Public License v2.0
2.08k stars 906 forks source link

Allow blocks to be hidden #4940

Open simonpoole opened 2 days ago

simonpoole commented 2 days ago

Problem

Temporary blocks "for investigation" remain both on the user page (active block count field is shown), as in the global block list, tainting the account till the end of time, or OSMs demise, whatever comes first.

Description

There has been a change of use of the blocking feature by the DWG that has, likely unintended, negative consequences. See for example https://www.openstreetmap.org/user_blocks/16347

Historically we've left zero hour blocks in the lists, but that has potentially the same issue.

I would suggest providing moderators with the option of hiding a block, which, in line with other moderation actions, would remove such blocks from public display (and not counting them for displaying the block link on the user page publicly).

See also https://github.com/openstreetmap/openstreetmap-website/issues/2127, https://github.com/openstreetmap/openstreetmap-website/pull/4200 and https://github.com/openstreetmap/openstreetmap-website/pull/4301

tordans commented 2 days ago

I assume it would be easier to add a delete option to blocks. Would that work as well? Does it require special restrictions, or can all moderators delete all blocks at any time? Personally I think that would be OK, we trust them with what they do…

The reason why it should be easier IMO: Hiding requires to add filter to all the right places, which is quite hard to get right.

mmd-osm commented 2 days ago

Mods can already revoke user blocks: https://github.com/openstreetmap/openstreetmap-website/blob/master/app/models/user_block.rb#L65-L73 - which has the added benefit of documenting who has performed the unblocking.

Maybe this could be used to hide them or not count them. I haven't checked if this is already taken into account today. The example given above hasn't been revoked.

pnorman commented 2 days ago

There has been a change of use of the blocking feature by the DWG that has, likely unintended, negative consequences. See for example https://www.openstreetmap.org/user_blocks/16347

We've been doing temporary blocks during investigation for at least a decade.

SomeoneElseOSM commented 2 days ago

Mods can already revoke user blocks

That only applies while the block is active. I can think of a couple of examples where I would have liked to revert (or even just edit the text of) blocks after they have expired, for example where someone was temporarily blocked to not cause a large vandalism revert to fail.

We've been doing temporary blocks during investigation for at least a decade.

That is true, but I suspect we're doing more "for investigation" ones now.

AntonKhorev commented 2 days ago

Hiding blocks was on DWG wishlist 2021.

@SomeoneElseOSM last time I asked about this was on Dec 27, 2023 and you replied that you never needed this feature. Is that still true? Or would you rather have block editing by revokers? Or both?

SomeoneElseOSM commented 2 days ago

(based on the way we work now) "block editing by revokers" would be useful, followed by "somehow noting that a block was just for investigation" (which might correspond to "Allow blocks to be hidden", although I think that the DWG would still want to know that "X couldn't edit between Y and Z because they were blocked for investigation at that time").

Elsewhere people have mentioned that https://www.openstreetmap.org/user_blocks doesn't have any dates or times on it. It's in "date applied" order, and has a horrible text status field that you can use to somewhat work out block length.

AntonKhorev commented 2 days ago

followed by "somehow noting that a block was just for investigation"

A boolean for_investigation field? Then we might as well add more reasons: ignoring discussions, evading another block etc.

simonpoole commented 1 day ago

I assume it would be easier to add a delete option to blocks. Would that work as well? Does it require special restrictions, or can all moderators delete all blocks at any time? Personally I think that would be OK, we trust them with what they do…

The reason why it should be easier IMO: Hiding requires to add filter to all the right places, which is quite hard to get right.

As a general rule I think it is a good idea to keep documentation for these kind of actions available to the DWG, so I would be against deleting them, and that said it isn't as if block lists are used all over the place, and while I haven't looked at the relevant code for a while, it is likely not more work than making the database query for blocks contingent on such a status flag and moderator status of the account.