Page MenuHomePhabricator

IP Masking: 2 different IP for same temp user in Recent Changes Group"2x"
Open, Needs TriagePublicBUG REPORT

Assigned To
None
Authored By
GMikesell-WMF
Mar 6 2023, 11:39 PM
Referenced Files
F36912576: image.png
Mar 15 2023, 11:27 AM
F36912511: image.png
Mar 15 2023, 11:27 AM
F36912574: image.png
Mar 15 2023, 11:27 AM
F36912566: image.png
Mar 15 2023, 11:27 AM
F36912554: image.png
Mar 15 2023, 11:27 AM
F36912491: image.png
Mar 15 2023, 11:27 AM
F36912572: image.png
Mar 15 2023, 11:27 AM
F36912568: image.png
Mar 15 2023, 11:27 AM

Description

Steps to replicate the issue (include links if applicable):

  • Go to Recent Changes>Advanced options in your Local environment. Now check "Group changes by page in recent changes and watchlist"
  • Edit an article while being logged out with one IP address
  • Now change your IP address and edit the same article again so the temp user now has 2 different IP addresses on the edit
  • Log back into the account with "Group changes by page in recent changes and watchlist" checked and click on Recent Changes.
  • On the history of your more recent changes, you'll see your edit with (2x) next to the Show IP button
  • Click on the Show IP butoon

What happens?:

The first IP is revealed, but there is no indication that there are more IPs

What should have happened instead?:
When the IP address is revealed, it should also say "and 1 more"

Other information (browser name/version, screenshots, etc.):
OS: macOS 13.0
Browser: Safari 16.0
Environment: Local

mentioned in T326396#8665875

IPMasking_2DifferentIPs_GroupChanges_2x.png (1×3 px, 446 KB)

Event Timeline

@Niharika @GMikesell-WMF
@RHo @Prtksxna

Hey, thanks for this ticket.

I don't understand why we want "and one more" instead of "x2".

  • Is it conditional to the temp user or applicable to all grouped items?
  • Is it only for the case of 2 IPs or anything more than 2 IPs? (If a temp user has an edit with 3 lines grouped, do we want <IP and 2 more>) ?

I have a case of a registered user having x4, would it be applicable here?

Thanks

Screenshot 2023-03-07 at 11.24.28 AM.png (260×1 px, 119 KB)

Tchanders subscribed.

@Niharika @GMikesell-WMF
@RHo @Prtksxna

Hey, thanks for this ticket.

I don't understand why we want "and one more" instead of "x2".

  • Is it conditional to the temp user or applicable to all grouped items?
  • Is it only for the case of 2 IPs or anything more than 2 IPs? (If a temp user has an edit with 3 lines grouped, do we want <IP and 2 more>) ?

I have a case of a registered user having x4, would it be applicable here?

Thanks

Screenshot 2023-03-07 at 11.24.28 AM.png (260×1 px, 119 KB)

@AGueyte I've re-worded the task description slightly, to reflect my understanding of T326396#8665875.

We should await comment from the others about this before starting work on it though.

I don't understand why we want "and one more" instead of "x2".

I am trying to understand this a bit better too. When the IP of that unregistered user is shown, only one of them is made visible right? And the "2x" implies that the the edits have been made by the same combination of unregistered user and IP address, when that is not the case.

Is it conditional to the temp user or applicable to all grouped items?

I think it would only be for temp users since only for them does "2x" not remain true if they're using multiple IPs.

Is it only for the case of 2 IPs or anything more than 2 IPs? (If a temp user has an edit with 3 lines grouped, do we want <IP and 2 more>) ?

I think, yes.

I have a case of a registered user having x4, would it be applicable here?

No, we'd continue with the "4x" because the fact that a registered user would have edited from multiple IPs is not (and should not) be shown here.


Hope this is helpful. I read the previous ticket you was linked, but I might be missing some context, so please poke holes in my reply :)

I think there's a few different scenarios we need to think about here. Let me try and clarify.

Scenario 1: There's one temporary username which edited the article three times but with different IP addresses each time.

Scenario 2: There's one temporary username which edited the article three times but from the same IP addresses each time.

Scenario 3: There's one temporary username which edited the article three times. 2 of the edits came from the same IP addresses and 1 from a different IP address.

Scenario 4: There's multiple usernames, include one temporary username which edited the article.

For each of these, we should decide what the collapsed row should show.

My understanding (please correct me if I'm wrong!) is that the "2x" indicates that the same IP address & temp username combination shows up in the collapsed section 2 times. But we also need a way to indicate if there are multiple different IPs for the same temp username. The idea of "and 2 more" was mine and I was only thinking about Scenario 1 at the time. The collapsed row could show the most recent IP address and we could say "and 2 more" to indicate that there are 2 more IP addresses for this temporary user that are collapsed within. That's just an idea - I would defer to @Prtksxna's judgement on this one.

Trying to map out the different scenarios based on @Niharika's inputs and @GMikesell-WMF's screenshots. Its a bit complex but I think this covers all the use-cases.

UsersUnique IPsEdits (by temp user)CollapsedCollapsed (Show IP)ExpandedExpanded (Show IP)
One temporary13
image.png (188×1 px, 18 KB)
image.png (188×1 px, 18 KB)
image.png (286×1 px, 51 KB)
image.png (286×1 px, 54 KB)
One temporary23
image.png (188×1 px, 18 KB)
image.png (188×1 px, 21 KB)
image.png (286×1 px, 51 KB)
image.png (286×1 px, 53 KB)
One temporary33
image.png (188×1 px, 18 KB)
image.png (188×1 px, 21 KB)
image.png (286×1 px, 51 KB)
image.png (286×1 px, 53 KB)
One temporary, one registered11
image.png (188×1 px, 19 KB)
image.png (188×1 px, 19 KB)
image.png (286×1 px, 48 KB)
image.png (286×1 px, 49 KB)
One temporary, one registered12
image.png (188×1 px, 19 KB)
image.png (188×1 px, 20 KB)
image.png (286×1 px, 51 KB)
image.png (286×1 px, 52 KB)
One temporary, one registered22
image.png (188×1 px, 19 KB)
image.png (188×1 px, 22 KB)
image.png (286×1 px, 51 KB)
image.png (286×1 px, 51 KB)

A few things to note:

  1. No matter how many IPs a temp user uses the multiplication number (2x, 4x) works the same as registered users
  2. Clicking Show IPs reveals all the places where the same IP was used by this user (@Niharika, please correct me if legal decided something else)
  3. Clicking 2 more could possibly expand the group and then show all the IPs. Here is a prototype of what that might look like. What do we think about this?
  4. When there are multiple IPs, show the last used IP and then and N more.

A question to think about that came up during design review today:

In which case would it be helpful to see the first IP and N more?
vs
Expanding the group and showing all the IPs automatically.

That is, similar to the prototype, but skipping one step.

How do we feel this feature would fit with the upcoming task about reveal all IPs in one click? T327946

How do we feel this feature would fit with the upcoming task about reveal all IPs in one click? T327946

That is a good question. If all the pairs are revealed we'll have to make sure that the ones in the collapsed group are revealed too. If I understand this right, for individual reveals we'll still have to figure out this interaction?

Thanks for the breakdown @Prtksxna . I've shared some thought below - to summarise, I'd be in favour of not doing anything extra here.

  1. No matter how many IPs a temp user uses the multiplication number (2x, 4x) works the same as registered users
  2. Clicking Show IPs reveals all the places where the same IP was used by this user (@Niharika, please correct me if legal decided something else)

These make a lot of sense and (happily) are already working.

  1. Clicking 2 more could possibly expand the group and then show all the IPs. Here is a prototype of what that might look like. What do we think about this?

It looks like "2 more" is a button styled as a link, but I believe we're moving away from that pattern for this feature (e.g. discussed in T325238#8543678). It does seem like there would be considerable visual noise if styled as a button, but I think that represents the amount of extra functionality that we'd be adding. I think this page is already complicated by the expanding rows and the IP reveal buttons, and I think adding another way of interacting here could make it too complicated. I think adding "2 more" as text would be informative enough, although...

  1. When there are multiple IPs, show the last used IP and then and N more.

...I'm wary of customizing how the IP reveal buttons work on different pages, particularly before we have detailed user feedback. Since we're showing the button everywhere an unregistered user link is shown (as opposed to on a few particular pages), we've come up with a general behaviour that will work everywhere. If we need to customize this for particular pages, it entangles the "reveal IP" feature with those pages and means that we may need to redesign from our end if the RecentChanges or Watchlist pages ever change. I'd be really wary of adding this maintenance burden up front.

It looks like "2 more" is a button styled as a link, but I believe we're moving away from that pattern for this feature (e.g. discussed in T325238#8543678). It does seem like there would be considerable visual noise if styled as a button, but I think that represents the amount of extra functionality that we'd be adding. I think this page is already complicated by the expanding rows and the IP reveal buttons, and I think adding another way of interacting here could make it too complicated. I think adding "2 more" as text would be informative enough, although...

You're right. Kieran is working on this new kind of button and is trying to address the visual noise issues.

Since we're showing the button everywhere an unregistered user link is shown (as opposed to on a few particular pages), we've come up with a general behaviour that will work everywhere. If we need to customize this for particular pages, it entangles the "reveal IP" feature with those pages and means that we may need to redesign from our end if the RecentChanges or Watchlist pages ever change. I'd be really wary of adding this maintenance burden up front.

I understand. Going with uniform behavior for the MVP makes sense.

Thanks @Prtksxna. Removing this from the sprint, since it's not MVP any more

Removing inactive task assignee (please do so as part of offboarding steps).