That changeset was made with StreetComplete. The fact that the timings are like that doesn’t mean that the user waited until the block expired and then uploaded; it might just be StreetComplete doing that. Perhaps @Mateusz_Konieczny (who has commented on one of these changesets, and is a contributor to StreetComplete, might know)?
I have blocked both users again for a short period and sent personal OSM messages to both accounts.
Edit: I’ve just sent a message to the account that I use in StreetComplete myself and no message in the app appeared, even after uploading some data. Maybe it will pop up at some point in the future.
Unread message pop up definitely should appear (uses basically the same interface and API as I suggested to be used in JOSM).
Maybe it is not marked as unread as you send it from the same account? Can you try sending it from different one? Or have you tried it already, with SC account being different?
StreetComplete will retry uploads on errors. It may include being blocked from editing.
I will recheck what happens when user is blocked (is there a special error code allowing app to handle it in a special way?).
Maybe in case of block user should be logged out in SC? Or get special message directing them to their block listing?
Maybe user should be stopped from using app at all while blocked?
BTW, maybe edits from that account should be reverted?
I’ve tried blocking the user that I used for StreetComplete. A toast was displayed at the first attempted edit - “Authorisation Error, Please try logging in again”. No message was displayed at the second attempted edit. The things I’d “edited” were not changed in OSM but were in SC’s upload queue.
I then manually logged into OSM in a PC browser and saw the block message.
After making another change in SC (after the block is cleared) results in a different message:
You need to authorize with your OSM user account to publish your answers. Authorize now?
You can do this later on the profile screen.
Later OK
That state persists across app closure. In this state SC incorrectly thinks that it has an invalid access token, but it does not.
After reauthorisation the edits are uploaded.
The summary of all of this is that there are a bunch of changes within StreetComplete that would be hugely beneficial:
allow ordinary OSM messages to be shown in a timely manner
allow block messages to be shown in a timely manner
recognise that a “failure to upload” might be a block and not an invalid token
Also, we cannot be sure that the user in this case has ever seen an email, a block message, or an OSM message
Edit: SC version on my phone was v60.0 from Google Play. Android 14, 1st Sep updates. SC not listed in app notifications, so I guess it has neither requested nor been denied permissions there.
This is accurate and reproducable behavior in StreetComplete. There’s a big chance that a user’s not going to notice a block that doesn’t force them to log in to the website.
PM notification is shown as popup within app, it does not generate phone-wide notification and if app is sleeping it will not check for unread private messages
(debugging this and block messages took multiple hours, even if this change is tiny. I fixed a related bug concerning HTTP codes while doing this. Block message not being shown loook more and more like osm.org bug and responsibility, expecting every editor app to include complex hacky workarounds seems like a poor idea.)