This page documents a feature the Wikimedia Foundation's Anti-Harassment Tools team may build. Development of this feature is complete.
The AHT team is going to dedicate some time towards adding feature to partial blocks. There is an open question about this on the talk page. Your thoughts would be much appreciated.
February 20, 2020
Partial blocks have been enabled on all Wikimedia wikis. Thank you to everyone who has helped this project along.
Partial blocks have been asked for more and more wikis recently. In light of that, we are ready to enable partial blocks across all wikis. This deploy will happen in the week of January 6th for most projects (unless your project has already requested more time for discussion). If your project wishes to opt-out of this deployment, please reach out to us – User:NKohli (WMF) or User:SPoore (WMF) on the talk page. We strongly encourage you to try the feature out before deciding whether it serves the needs of your project or not.
Partial blocks has been enabled on all wikivoyage, wikisource and wiktionary wikis. We think the partial blocks feature is at a good, stable stage now as we have seen fewer and fewer bugs come up in the last few months of the feature being deployed on various projects. The team has spent a lot of time in improving the backend infrastructure of block code and made sure that the code is reliable, in anticipation of any future features that may need to be added.
There continues to be requests from more wikis for partial blocks. We also presented about partial blocks at Wikimania and it was very well-received, with several attendees asking for partial blocks to be enabled on their home wikis. In light of the general positive reception to partial blocks on wikis where it is deployed, we are planning to do a wider deployment to more Wikimedia projects in the next few weeks.
We will continue to collect feedback about partial blocks as we launch the feature on more wikis, alongside data collection on usage of the feature. We are also around to do maintenance work on the features, as and when needed.
Partial Blocks are now live on Arabic Wikipedia, which means they fully support non-Latin languages and RTL languages. Partial blocks is ready to enable on any language Wikimedia wiki (except Wikidata.) 🎇
We're looking for users who want to represent their wiki to enable this feature. Please leave a message on the talk page if you would like to help. Thank you!
Namespace blocks are live! 🚀
There are some minor fixes and changes we'll be working on over the next few weeks, but the next major stage for this project is to release to more wikis so we can observe how effective they are at mitigating user misconduct, and to get feedback about any changes we should make. Specifically, we are seeking to understand:
- What is an appropriate limit of the number of pages a user should be blocked from? In the first version limit is 10, but it can any number.
- How should partial blocks be logged to allow for accurate and specific logging while keeping the logs easy to read? Currently they are being logged comprehensively in the block log.
- Should a notice appear when someone edits the user or user talk page of a partially blocked user? Currently, a notice only appears if the user cannot edit that page (e.g. a user is blocked from their own user page)
- What features are missing that need to be built?
If you would like to have this functionality on your wiki to combat harassment, vandalism, or other forms of user misconduct, please let us know on the talk page.
As upload blocks will require additional database changes (which requires months of advance notice and planning) we will first complete page and namespace blocks before deciding to pursue upload blocks.
Today we reached another significant milestone! Partial Blocks have been enabled on Italian Wikipedia and the local wiki administrators are setting partial blocks to combat vandals! A big congratulation to my team for working through the inner guts of MediaWiki and all its processes to make sure we have a safe and reliable blocking tool. 🎉
If you would like to test the functionality, it will forever be available on http://test.wikipedia.org/wiki/Special:Block (write us if you need admin privileges.) We're already talking to two other languages of Wikipedias about being testers — if your wiki would like to test please write on our talk page!
As 2018 draws to a close, our team is putting the final touches on Namespace blocks. This functionality should be ready in January on Test Wikipedia and on the non-English Wikipedias that are eager to adopt this new functionality. Our plan for early 2019 is to release to several wikis and make changes based on what problems and opportunities arise. We'll also build the ability to block a user from uploading files, creating new pages, and renaming pages.
Meanwhile, our team's analyst is analyzing data on the effectiveness of blocks. These measurements should help us better understand how many blocks are effective at stopping continued abuse to the wiki or its community members. We expect this data to show us if partial blocks are as effective as sitewide blocks and hope this data can inform the governance policies for when to levy blocks and block lengths.
Our team is still working on addressing the final defects before we enable Partial Blocks on Italian Wikipedia. We're optimistic that we can hit this milestone next week! In the meantime testing is still available on Test Wikipedia and Test Wikidata for users interested in taking a look at what's ready so far.
We're also confident that we can get Namespace blocks to a near-ready state by the end of December, before we break for the winter holidays. That functionality should be ready on Test Wiki in January.
We have a handful of bugfixes and feature enhancements to release this week! This list explains everything that's changed. In short, these changes will make Partial Blocks only affect exactly what is listed in the block set by the admin, as we originally intended. All changes will be available on http://test.wikipedia.org by Wednesday of this week.
With this set of changed we feel confident in the stability and functionality of the feature. We are working with Italian Wikipedia to look-over the functionality on Test Wiki before they adopt the feature and integrate it into their user mediation workflows. If any other wikis are excited to use this functionality, please let us know and we'll begin working with you!
Meanwhile, our devs are also working on implementing Namespace blocks. We hope to have them completed in the coming weeks.
This first feature set is limited: admins can block an user or IP from editing up to 10 specified pages. There are some known defects that we're currently working on (for example, if an admin is partially blocked from a page they can't delete any page.) and we'll get back to building namespace and upload blocks in later November.
If you're testing partial blocks we'd love to hear from you! Drop us a note about your experience with the tool. We're looking specifically for feedback about:
- What is an appropriate limit of the number of pages a user should be blocked from? In the first version limit is 10, but it can any number.
- Are you satisfied with how partial blocks are logged?
- Do we need to change anything that has already been built?
- Is the warning message in the VisualEditor too gentle?
We're making significant progress on Partial Blocks and are nearly live on production wikis. We hope to have a functional version on test.wikipedia.org and test.wikidata.org in the coming weeks. We're very excited to share it with you!
While the devs put the final touches on the first version, others on our team are currently thinking about how we want to measure the effectiveness of blocks. We're asking ourselves (and anyone who will listen) questions like "Are blocks effective at stopping harm? Do users who are blocked return to make constructive edits? How do we measure this?" — if you are interested in discussing this topic, we have a 7 proposed measurements and commentary on why we selected them at the other project page.
As part of this, we've generated some data on how frequently blocks are set (did you know there are currently 3.4 million active blocks?) and pages are protected (~20,000 pages are currently protected) to better understand the scale of administrative actions.
We have a fourth round of designs, based on feedback from our second round in June. Here are the two new designs, detailed UI element views can be seen in the gallery below.
What Special:Block will look like after this change.
A partial block configured.
Our team is nearly ready to release the first feature set of partial blocks — the ability to block a user from ≤10 pages — on the beta environment then test.wikipedia by mid-October. We are talking with some early opt-in wikis to test the functionality, please let us know if your wiki would be interested in utilizing this functionality, which also gives you a great opportunity to dictate the future of this project!
In other news, due to technical complexity, we have decided to de-prioritize multiple blocks and remove it from this project. I've moved the documentation here. This small amount of functionality would take a very large amount of time to build and we first want to make sure page, namespace, and upload blocking work as expected and actually produce meaningful impact. We'll have another round of designs soon and we look forward to delivering a great partial blocks feature in the coming months!
We have our third round of designs almost ready and we want to share them now before we go too far without validating our direction. These designs include functionality to view details about multi-blocks. Because of this change we need to introduce a new piece of information during the blocking process. This led us to the idea of a block modal window, which can theoretically appear on any page — a diff page, recent changes, a profile, etc. This would allow an admin to block a user without having to navigate to another page. Here is how it would work:
// designs redacted, moved on Multi-blocks subpage. //
Based on conversations on the talk page, in person at Wikimania last month, and on the TechComm RFC for this project our team has decided to merge the project of multi-blocks into Partial Blocks. The goal of multi-blocks is to allow admins to set multiple concurrent blocks against an account with independent expiration dates, decreasing the manual workload on administrators. Example use cases for multi-blocks include:
- User:Apples has been indefinitely blocked from editing
Neptune. They then receive a 24 hour full-site block. When the full site block expires, they should continue to be blocked from
- User:Bananas is indefinitely blocked from editing
Marsand from editing
Venusuntil 2025. An admin wants to block them from
Saturnfor one month.
- After User:Carrots has violated a wiki policy, an admin wants to set both an indefinite block against
Plutoand a 24-hour sitewide block at the same time, without having to write a self-reminder to update the block.
This will require changes to Special:Block, Special:Unblock, Special:BlockList, and Special:Contributions. We are working on another round of designs (with minimal changes from the last round) which we will post on this page next week. Work for multi-blocks will be tracked in Phabricator at phab:T194697. Our TechComm RFC can be found at phab:T199917 which includes all our proposed database changes and other technical implementation details.
Most feedback we’re receiving at this stage in the project is about one hypothetical — yet entirely likely — workaround a malicious user could exploit to their advantage: a user using a temporary sitewide block to erase (and therefore evade) an indefinite partial block. This could be resolved with manual solutions (e.g. calendars and reminders to reinstate the partial block) but this is inconvenient and interruptive to your workflows and prone to human error. It’s clear that we need to determine a solution to prevent this abuse before Partial Blocks releases to most wikis. There are a few ways to do this and this can get pretty complicated, please help me determine which system we should build:
- Option 1 – Re-blocks
Description: If an admin escalates a partial block to a sitewide block and the expiration date for the sitewide block is shorter than the previous partial block, the admin should have an option for the block to revert to the previous partial block parameters when the sitewide block expires.
Example: An admin blocks User:Apples from editing the page Argentina for 9 months. The same day, an admin modifies the block to Argentina and Bahamas for 8 months. The same day an admin blocks the user from the entire site for 7 months. After 7 months, User:Apples would be blocked from Argentina and Bahamas for 1 more month, after which the partial block would be entirely expired.
This change would only require adding one additional option into the Special:Block UI when a block is being modified.
- Option 2 – Multi-blocks
Description: Admins should be able to set different expirations for different elements of a block.
Example: An admin could block User:Bananas from editing Argon for 9 months, Boron for 8 months, and sitewide for 7 months. After 7 months, the user would be blocked from Argon and Boron and after 1 more month the user would be blocked only from Argon. After 1 more month the partial block would be entirely expired.
This change would require a more significant change to how blocks are currently logged and managed on Special:Block, Special:BlockList, Special:Contributions, and Special:Unblock. Users can be partially blocked from an unlimited number of pages, meaning every page could hypothetically have a different expiration, which could lead to some complicated situations.
- Option 3 – Something else!
We’d love to hear more alternate proposals. Please discuss on the talk page.
For all options it should be possible for an admin to clear all blocks from an account, leaving it entirely unblocked. This will most likely be a change to Special:Unblock.
Join us on the talk page to let us know what you think!
The banner has been disabled because of the delayed code release to major Wikipedias. We aim to re-enable it on all wikis from July 30 to August 3.
From today until Monday, July 23 we will be running a banner on Special:Block to invite administrators to visit this wiki page to read about this project and to provide feedback on our designs. If that banner brought you here, welcome!
This project was slightly delayed due to other interruptive work and unfortunately will not be demonstrable by Wikimania. The entire Anti-Harassment Tools team will be at Wikimania in Cape Town next week, so if you are attending please find us and discuss this project!
We are optimistic to have a functional version of this in early August. We're still planning to build it according to the designs in the June 28 update.
During the last week on July, we will post a banner on Special:Block inviting people to visit this page to learn about our changes. We anticipate a lot of people will join the discussion. Welcome!
We will also be holding a technical RFC in the coming weeks to make sure our architecture decisions are agreeable.
- 我們打算透過ajax載入封禁日誌，在窄螢幕顯示於工具的下方，寬螢幕的LTR wiki顯示於右方。
时间戳 管理员（讨论 | 贡献 | 封禁）阻止了 被封禁者（讨论 | 贡献）编辑页面Foobar，到期时间为N（理由）（解封 | 更改封禁）
时间戳 管理员（讨论 | 贡献 | 封禁）阻止了 被封禁者（讨论 | 贡献）编辑名字空间Foobar，到期时间为N（理由）（解封 | 更改封禁）
时间戳 管理员（讨论 | 贡献 | 封禁）阻止了 被封禁者（讨论 | 贡献）编辑页面Foobar和名字空间Foobar2，到期时间为N（理由）（解封 | 更改封禁）
- 2015年社群願望調查/審核和管理工具#Enhanced per-user / per-article protection / blocking
In addition to simple per user blocking, the Foundation's Anti-Harassment Tools team would like to support the work done by volunteers who set, monitor, and enforce editing restrictions on Wikimedia wikis, as well as building systems that make it easier for users under a restriction to avoid the temptation of violating a sanction and remain constructive contributors.