==== Motivation
Once IP Masking goes into effect, IP addresses will be hidden from most users. Users with certain privileges will continue to be able to view IP addresses. There are a few different ways this will happen. This ticket lists out all the conditions under which IPs will be revealed and who will be able to reveal the IPs.
==== Who can see IPs?
* Admins who opt-in to seeing IP addresses (agree to terms)
** This needs a new preference that Legal will decide the text for.
* Checkusers
* Patrollers who meet the following conditions:
** Condition 1: Will need to meet some TBD thresholds for account age and minimum edit count (!!pending on Legal!!)
** Condition 2: Will need to be granted the IP-viewer right by community consensus
** Condition 3: Will need to explicitly opt-in to viewing IP addresses (agree to terms)
==== Where are IPs exposed?
* Special:History
* Special:Contributions
* Special:Log (including all subpages where temp accounts are visible)
* Special:Watchlist
* Diff page
* Special:Checkuser and Special:Investigate
** These pages are accessible to Checkusers only
* Special:Block
* Possibly other similar pages that we discover along the way.
**Note:** IP Revealing in content and talk pages will be tackled in a separate ticket.
==== How are IPs revealed?
* On Special:Checkuser and Special:Investigate `checkusers` can do a "Bulk Reveal" which reveals all IPs for all temp accounts on those pages.
* On all other pages `admins` and `checkusers` will be able to reveal all IPs for a given temp account. In other words, revealing a temp account will unveil all instances of that temp account on that page irrespective of the IP address.
* `patrollers` will only be able to reveal a single "temp account - IP address" pair at a time. In other words, revealing a temp account will unveil all other temp account instances on that page that are from the same IP address.
==== Do revealed IP addresses persist?
Yes. For admins and checkusers, all temp accounts once revealed will stay revealed even when the user moves across pages. They will stay revealed for 24 hours.
For patrollers temp-account-IP address pairs once revealed will stay revealed even when the user moved across pages. This will stay revealed for 24 hours.
==== What is logged?
Every time an IP address is revealed, log the following:
* Timestamp
* Page
* Temp username that was revealed
* IP address that was revealed (!!need to check!!)
* Performer for the reveal