Page MenuHomePhabricator

Interaction Timeline: Change definition of "pages where both users have edited" to respect the start and end dates
Closed, ResolvedPublic2 Estimated Story Points

Description

Right now the Timeline shows all edits by both users on pages where both users have made 1+ edit, regardless of the edit date. Given that Wikipedia is 17+ years old, there are a lot of "two ships passing in the night" edits that may take up space on the Timeline, especially on popular pages (e.g. Village Pump).

If two users edit the same page over a long period of time, they are not interacting. (Like these two users on the Iguana article.) I'm calling this the "interaction threshold"[1] — for now it is set to 'all time' but this is turning out to be too simplistic.


Acceptance criteria
  • Whatever is set within the date range parameters should define the "pages where both users have edited"

[1] Shoot me if I ever suggest putting the words "interaction threshold" in the UI. ☠️


Future related task

Event Timeline

Allow users to set a date range for the edits (e.g. if Apples edits 'Cats' in 2005 and Bananas edits 'Cats' in 2006 and both users edit 'Dogs' in 2006 — if the filter is set to only show intersecting edits from 2006 then only edits to 'Dogs' should appear.)

Instead of setting a specific year, it might be a better UX to set a range (i.e. "within 1 year" or "within 2 weeks")

@dbarratt I updated the description. Feel free to add more to it!

Allow users to hide a specific page from the Timeline (e.g. Village Pump)

Looks easy. We just need to figure out a UI for it. We can also do the inverse and only show interactions in selected pages.

Allow users to only see edits in the same sections on talk pages

Hard, due to the volume of the table and that sections are not structured data

Allow users to manually set a smaller date range (e.g. include edits from January 1, 2007 to July 10, 2007, but only display edits from June 1, 2007 to July 10, 2007)

I don't understand this

Allow users to toggle if the date range for edits shown on the Timeline UI should also define the "pages where both users edit" (e.g. include and display edits from August 1, 2008 to August 15, 2008)

Easy and this helps with performance

Do not include pages where the length between edits is 365 days
Give users a toggle to set this number — all time / year / month / week

These two are tricky. It can be done I think

Allow users to hide a specific page from the Timeline (e.g. Village Pump)

Looks easy. We just need to figure out a UI for it.

I think it would be a select box (like the users select box) that lets the users select the pages to exclude. This field could be hidden behind a checkbox if it would be used infrequently.

The inverse would be the same, but you could obviously only do one or the other, so we might need a radio button or something to select what you want to do.

It would be a better UX if we build an endpoint that only searched through pages both the users have edited, so the user isn't given a bunch of irrelevant options.

Allow users to manually set a smaller date range (e.g. include edits from January 1, 2007 to July 10, 2007, but only display edits from June 1, 2007 to July 10, 2007)

I don't understand this

Haha, that's because it's a dumb idea and I regret ever suggesting it. Essentially it was to have TWO start dates and end dates — one for what to show in the timeline and the other to define "interactions"

Thanks for the notes. We'll need to decide soon.

Allow users to only see edits in the same sections on talk pages

Hard, due to the volume of the table and that sections are not structured data

Does hard mean that this is not possible as a secondary feature to this tool at all, or that it will require more complex coding which will require more time to be spent on this tool (when there's other more pressing needs)? Or... something else?

Allow users to only see edits in the same sections on talk pages

Hard, due to the volume of the table and that sections are not structured data

Does hard mean that this is not possible as a secondary feature to this tool at all, or that it will require more complex coding which will require more time to be spent on this tool (when there's other more pressing needs)? Or... something else?

It's possible, but difficult given how the tool is currently built. We'd have to rebuild a lot of it. I think we can find other solutions that achieve the same end goal.

I've split this task and moved this idea to T189850: Timeline: Allow users to hide edits on certain pages

Allow users to manually set a smaller date range (e.g. include edits from January 1, 2007 to July 10, 2007, but only display edits from June 1, 2007 to July 10, 2007)

I don't understand this

Haha, that's because it's a dumb idea and I regret ever suggesting it. Essentially it was to have TWO start dates and end dates — one for what to show in the timeline and the other to define "interactions"

Thanks for the notes. We'll need to decide soon.

That's what I was confused about with T189849#4056901. It's kind of hard to wrap your head around, but I think an "interaction threshold" dropdown will work nicely :) Power users will understand it and take advantage of it. For everyone else:

There are two leading ideas for how to define the new default interaction threshold:

  • Whatever is set within the date range parameters
  • Give users a dropdown — all time / year / month / week

I would suggest both as a single dropdown, with the "provided date range" as the default option. As it stands now, linking to this looks like a bug, even if you do T189849, because I don't see edits to the same page.

I would suggest both as a single dropdown, with the "provided date range" as the default option. As it stands now, linking to this looks like a bug, even if you do T189849, because I don't see edits to the same page.

I couldn't agree more. I think common pages should be limited to the date range we are querying regardless if we implement the threshold

I'm a little confused by the idea of the date range - does this mean:

  1. Find all edits made by Alice and Bob between e.g. January 1, 2018 and February 1, 2018; or
  2. Find all edits made by Alice and Bob within the same n days (that may be Alice editing, then 7 days later Bob editing the same page)?

These are kind of distinct things, and while long-term trolling isn't caught by the latter, I suspect it might be the most useful for most users of the tool.

I'm a little confused by the idea of the date range - does this mean:

  1. Find all edits made by Alice and Bob between e.g. January 1, 2018 and February 1, 2018; or
  2. Find all edits made by Alice and Bob within the same n days (that may be Alice editing, then 7 days later Bob editing the same page)?

These are kind of distinct things, and while long-term trolling isn't caught by the latter, I suspect it might be the most useful for most users of the tool.

Both are options, and both options have pros and cons. Let's use this example of User:Apples and User:Bananas:

  • January 2 — Apples edits Arizona
  • January 4 — Apples edits Delaware
  • January 6 — Bananas edits Washington
  • January 8 — Bananas edits Florida
  • January 10 — Apples edits Missouri
  • January 12 — Apples edits Texas
  • January 14 — Bananas edits Texas
  • January 16 — Bananas edits Georgia
  • January 18 — Apples edits California
  • January 20 — Apples edits Utah
  • January 22 — Bananas edits Arizona
  • January 24 — Bananas edits Missouri

If you set the date range to January 10-20:

  • the current timeline would show Apples' edits to Missouri + Texas and Bananas' edits to Texas.
  • with the proposal to respect the date range as the threshold, the timeline would show Apples' edits to Texas and Banana's edits to Texas.
  • with the proposal to set a 7-day threshold, the timeline would show Apples' edits to Texas and Banana's edits to Texas.

If you set the date range to January 10-24:

  • the current timeline would show Apples' edits to Missouri + Texas and Bananas' edits to Texas, Arizona, + Missouri
  • with the proposal to respect the date range as the threshold, the timeline would show Apples' edits to Missouri + Texas and Bananas' edits to Texas + Missouri
  • with the proposal to set a 7-day threshold, the timeline would show Apples' edits to Texas and Banana's edits to Texas.

Does this make sense? Or I have riddled this with too many bullets? 😆

We are going to make a decision and size this tomorrow at 2pm ET (11am PT) — if anyone not on the Anti-Harassment Tools team has any opinions, please share them!

! In T189237#4057730, @TBolliger wrote:
Does this make sense? Or I have riddled this with too many bullets? 😆

Sort of! Though by "seven-day threshold" I was more thinking of "give me all edits Apples and Bananas made to mutual articles within seven days of each other". So if Apples edits [[Arizona]] on January 1, then Bananas edits it on January 6, this would come up. But if Apples edits [[Colorado]] on May 2 and Bananas doesn't edit it until August 2, it wouldn't.

This is kind of similar to your interpretation, only without a date range:

  • with the proposal to set a 7-day threshold, the timeline would show Apples' edits to Texas and Banana's edits to Texas.

edit: My proposal seems mostly useful to detect longer-running instances, but I can imagine why that would be a fairly rare request.

! In T189237#4057730, @TBolliger wrote:
Does this make sense? Or I have riddled this with too many bullets? 😆

Sort of! Though by "seven-day threshold" I was more thinking of "give me all edits Apples and Bananas made to mutual articles within seven days of each other". So if Apples edits [[Arizona]] on January 1, then Bananas edits it on January 6, this would come up. But if Apples edits [[Colorado]] on May 2 and Bananas doesn't edit it until August 2, it wouldn't.

This is kind of similar to your interpretation, only without a date range:

  • with the proposal to set a 7-day threshold, the timeline would show Apples' edits to Texas and Banana's edits to Texas.

edit: My proposal seems mostly useful to detect longer-running instances, but I can imagine why that would be a fairly rare request.

@jrbs — I think we're defining the same thing. To use this example with the value of 90 days (instead of 7, which I couldn't find a simple neutral example easily) it would show all edits by both Paul and myself to Lord Huron, Tall Heights, and Wolf Parade but not Portugal. The Man, Dr. Dog, and Spoon (band).

Edit: Or, to use my Apples and Bananas and United States example from above, if you set it to January 14-24:

  • the current timeline would show no edits for Apples but Bananas' edits to Texas, Arizona, + Missouri
  • with the proposal to respect the date range as the threshold, the timeline would show no results
  • with the proposal to set a 7-day threshold, the timeline would show no edits for Apples but Banana's edits to Texas

@jrbs — I think we're defining the same thing. To use this example with the value of 90 days (instead of 7, which I couldn't find a simple neutral example easily) it would show all edits by both Paul and myself to Lord Huron, Tall Heights, and Wolf Parade but not Portugal. The Man, Dr. Dog, and Spoon (band).

Edit: Or, to use my Apples and Bananas and United States example from above, if you set it to January 14-24:

  • the current timeline would show no edits for Apples but Bananas' edits to Texas, Arizona, + Missouri
  • with the proposal to respect the date range as the threshold, the timeline would show no results
  • with the proposal to set a 7-day threshold, the timeline would show no edits for Apples but Banana's edits to Texas

Yeah, I think you're right. Basically my "proposal" (if you can call it that!) seems to be the same but without that date limiter.

I do think including all mutual edits, then presenting them in terms of the timespan between them, would still be really useful. Though I understand that's not really the point of this tool :)

@jrbs — It might have a place in this tool, but likely as part of Idea 1 on T189850: Timeline: Allow users to hide edits on certain pages. We could show the entire list and some data, similar to the Sigma tool, and allow users to toggle on/off any pages of their choosing.

I have a quick question that probably is due to the fact that I'm not familiar with the tech side of this tool, but here it goes anyway: does the tool list 'all edits' between two users on the same pages? By that I mean, does it show only visible edits, or does it also show edits that have been reverted, rev-del'd or oversighted?

I have a quick question that probably is due to the fact that I'm not familiar with the tech side of this tool, but here it goes anyway: does the tool list 'all edits' between two users on the same pages? By that I mean, does it show only visible edits, or does it also show edits that have been reverted, rev-del'd or oversighted?

Right now, it shows any revision that is publicly accessible. Adding permission-restricted edits will be done as part of T186271.

That's great! Thank you, dbarratt.

TBolliger renamed this task from Interaction Timeline: Allow users to set a more granular definition of "pages where both users have edited" to Interaction Timeline: Change definition of "pages where both users have edited" to respect the start and end dates.Mar 20 2018, 6:39 PM
TBolliger updated the task description. (Show Details)
TBolliger updated the task description. (Show Details)

For simplicity and usability, we are going to proceed with changing the definition of "pages where both users have edited" to respect the start and end dates provided by the users. In the future users may change to the prior 'all time' logic in T190208.

To be clear, let me explain what will change using this trusty example of User:Apples and User:Bananas:

  • January 2 — Apples edits Arizona
  • January 4 — Apples edits Delaware
  • January 6 — Bananas edits Washington
  • January 8 — Bananas edits Florida
  • January 10 — Apples edits Missouri
  • January 12 — Apples edits Texas
  • January 14 — Bananas edits Texas
  • January 16 — Bananas edits Georgia
  • January 18 — Apples edits California
  • January 20 — Apples edits Utah
  • January 22 — Bananas edits Arizona
  • January 24 — Bananas edits Missouri

If you set the date range to January 10-20:

  • the current timeline would show Apples' edits to Missouri + Texas and Bananas' edits to Texas.
  • with our upcoming change, the timeline would show Apples' edits to Texas and Bananas' edits to Texas.

If you set the date range to January 10-24:

  • the current timeline would show Apples' edits to Missouri + Texas and Bananas' edits to Texas, Arizona, + Missouri
  • with our upcoming change, the timeline would show Apples' edits to Missouri + Texas and Bananas' edits to Texas + Missouri

If you set it to January 14-24:

  • the current timeline would show no edits for Apples but Bananas' edits to Texas, Arizona, + Missouri
  • with our upcoming change, the timeline would show no results

🍎 🍌 🎉

@dmaza Do you have a good test query for this?

@dbarratt ?wiki=enwiki&user=CSinders (WMF)&user=TBolliger (WMF)&startDate=1505707200