Page MenuHomePhabricator

CU 2.0: Timeline tab
Open, MediumPublic8 Estimated Story Points



User story: As a checkuser, I am interested in looking into a timeline of the contributions of the users and IPs under investigation so I can compare their activity and determine if they seem like the same user.


Screenshot 2020-03-09 at 8.42.26 AM.png (1×2 px, 616 KB)

The timeline is very similar in appearance to Recent changes.

Acceptance criteria
  • Add a new tab for the Timeline
  • The time displays data for all the users currently under investigations (i.e. users in the initial input form + users that were added because of further drilling down using the Show all N users... and Show all N IPs... buttons)
  • Show all the contributions (edits), new page creations and log entries for the above users in reverse chronological order of time of activity (latest to oldest) for the time period for which the user has made the investigation. The changes can be found in the cu_changes table.
  • There is a header for each date -- the entries are thus clubbed by the date.
  • The information shown per record is as follows:

For an edit

(diff)(hist) .. Page-edited .. Timestamp .. Username (talk|contribs) .. IP address .. User-agent .. (Edit summary)
  • If the record is for an unregistered editor, the Username does not exist and will be skipped. The (talk|contribs) link will then live next to the IP address.
  • diff and hist lead to the edit diff and page history for the page edited.
  • talk and contribs lead to the user's talk and contributions page.
  • All the above links open in new tabs.

For a new page creation

N .. Page name  .. Timestamp .. Username (talk|contribs) .. IP .. User-agent .. (Edit summary)
  • The N in front of the log entry indicates a new page creation. You can see it in action on recent changes.

For a log entry

(Log) .. Timestamp .. Username (talk|contribs) <action> reset password for user "Testzzz7788"  .. IP .. User-agent
(Log) .. Timestamp .. Username (talk|contribs) <action> was created .. IP .. User-agent
  • The "Log" in front of the log entry will link to the specific log entry on Special:Log. The link opens in a new tab.

There will be follow up tickets for:

  • Highlighting in the Timeline tab
  • Filters in the Timeline tab

For reference, current CU displays the timeline view as but only for one user at a time. In the following screenshot I looked up a range in the input.

image.png (968×2 px, 477 KB)

Things that the older version displays but the newer one doesn't:

  • User's permissions next to the username.
  • Information about whether the user/IP was previously blocked.
  • Link to block the user next to their username.

Event Timeline

Niharika triaged this task as Medium priority.Nov 7 2019, 12:45 AM
Niharika updated the task description. (Show Details)

@AronManning Don't worry, I can take care of adding the mocks and expanding the task description. I think the mocks are likely to change based on the on-wiki feedback, hence I'm holding back on adding those for now.

Niharika renamed this task from [Epic] CheckUser 2.0: Timeline to CU 2.0: Timeline tab.Mar 4 2020, 11:40 PM
Niharika updated the task description. (Show Details)
Niharika removed a project: Epic.
Niharika set the point value for this task to 8.Mar 5 2020, 7:34 PM

Since this is a large task and there isn't a clear way to break it up, so the team talked about iterating within the task to ensure that we are going the right direction.

This looks great. Let's just make sure we don't literally copy over what RecentChanges is doing, because the way it is constructing its lines is pretty horrific, and uses monospace-font single-spaces to align tags per each line, etc.