Community Tech/Completed work

From Meta, a Wikimedia project coordination wiki

This is a list of tasks that have been resolved by the Community Tech team.

26 June - 9 July[edit]

28.85 story points

12 - 25 June[edit]

22 story points

Sprint 61 (Feb 14-27)[edit]

59 story points

TemplateWizard (8)

  • Create a basic proof-of-concept user script for fetching template data — T186654 - 8pts

Commons deletion bot (6)

  • Decide tech stack for Commons deletion bot — 188147 - 1pt
  • Investigation: Commons deletion notifications bot — phab:T184311 - 5pt

Thanks for log entries (5.5)

  • ext.thanks.revthank depends on jquery.cookie — phab:T187851 - 0.5pt
  • Investigation: Thanks notification for log entry — phab:T184309 - 5pt

Global Preferences (3.5)

  • Update to use new GlobalPreferencesFactory class name — phab:T187972 - 0.5pt
  • QA testing for GlobalPreferences — phab:T187490
  • Deploy GlobalPreferences on beta cluster — phab:T184668 - 2pt
  • GlobalPreferences clean-up from Security Review — phab:T187218 - 1pt

Ping from edit summary (10)

  • Enable 'Ping from edit summary' on beta labs — phab:T187835 - 2pt
  • Create patch for detecting and processing pings in edit summaries & sending notification — phab:T186655 - 8pt

Grant Metrics (26)

  • Programs with Events and Events with Participants should not be deletable — phab:T187280 - 2pt
  • Create documentation page for using the tool — phab:T186081 - 3pt
  • Setting an event time requires clicking on the dates — phab:T187276 - 3pt
  • Show the timezone picker by country/city — phab:T182957 - 2pt
  • Bug: App lets you navigate to url(s) without being logged in — phab:T182888 - 3pt
  • BUG: Pagination doesn't actually work on data page — phab:T187392 - 1pt
  • Aesthetic changes to 'view all data' page — phab:T187394 - 1pt
  • Create data export page — phab:T186377 - 8pt
  • Implement frontend for metrics calculation for events — phab:T182885 - 3pt

Sprint 60 (Jan 31-Feb 13)[edit]

67 story points

Grant metrics (31)

  • The "Save participants" button vanishes randomly and doesn't let you save — T187132 - 2pts
  • Grant metrics doesn't let you add participants sometimes — T187134 - 1pt
  • Make event statistics specific to a wiki — T186560 - 5pts
  • User logout screen — T187136 - 1pt
  • Improve login with OAuth — T187138 - 1pt
  • Create the event view - view for when user clicks an event — T182086 - 8pts
  • Job queue system for grant metrics — T186361 - 5pts
  • Make retention time period configurable — T185921
  • Implement backend for metrics calculation for events — T182887 - 8pts

GlobalPreferences (7)

  • If no global-prefs DB is set try to use shared DB — T186773 - 2pts
  • Create Help:Extension:GlobalPreferences on — T174753 - 3pts
  • Improve display of local-exception checkboxes — T186079 - 2pts

Other (28)

  • Investigation: Ping users from edit summary — T184030 - 5pts
  • Investigation: Infobox wizard — T184145 - 8pts
  • Successful login notification gets sent out sometimes — T174220 - 8pts
  • Maintenance script to generate fake login attemps from any IP — T183722
  • Deactivate Hebrew and Portuguese CopyPatrols — T178643 - 2pts
  • Does eswiki want CopyPatrol? — T186025 - 2pts
  • Remove MobilePreferences from MobileFrontend — T185934 - 3pts

Sprint 58/59 (Dec 19-Jan 30)[edit]

52 story points (two sprints + Winter break + All Hands)

Other/misc (21)

  • Fatal error: Class undefined: PageAssessmentsBody — T185037
  • Add Mediaviews to Pageviews suite — T149642
  • Implement a method to keep rtl.dblist up to date — T172337 - 5pts
  • Investigation: Create job queue system for calculating event statistics — T184492 - 3pts
  • Investigation: Short-term solutions for global gadgets — T177674 - 5pts
  • Users are redirected to percent-encoded section fragments after section editing — T179520 - 5pts
  • Investigation: LoginNotify false positives on dewiki — T178619 - 3pts

Global preferences (15)

  • Dynamically enable/disable the related pref when toggling "Set a local exception for this global preference" — T178267 - 3pts
  • Fix a gotcha with hook handlers order — T172029
  • Global preferences: More design fixes — T179738
  • Need support for Echo notification preferences — T172585 - 3pts
  • Keep using the 'editmyoptions' user right for GlobalPreferences — T175978 - 1pt
  • Dynamically enable/disable the related pref when toggling "Set a local exception for this global preference" — T178267 - 3pts
  • Design fixes — T179542 - 2pts
  • Global preferences lets you set email options without email address — T179716 - 3pts

Grant metrics (9)

  • Fix trailing slash issue in Grant Metrics — T184315 - 1pt
  • Autocomplete wikis when picking them for events — T182729 - 3pts
  • View events in Grant metrics — T179541 - 5pts

IA upload (2)

  • IA Upload fails with abusefilter warning "abusefilter-warning-copyv2" — T165013 - 2pts

CodeMirror (5)

  • "Wikitext syntax highlighting" feature asks the user "confirm that you want to leave" after clicking on the text and not making changes — T177175 - 5pts

Sprint 56/57 (Nov 7-Dec 18)[edit]

86 story points (two sprints + Thanksgiving & Wishlist Survey)

Grant metrics (32)

  • Implement a simple date picker for event time selection phab:T182870
  • Create event in Grant metrics phab:T179549
  • Pin down the exact queries we'll be needing for computing metrics for events phab:T182083
  • User can update an event in grant-metrics phab:T182084
  • My programs' landing page with program creation/deletion phab:T178823
  • Form input and response handling for Grant Metrics phab:T178835

Section URLs (12)

  • Deploy HTML5 sections to WMF production phab:T175725
  • Reference names can't contain square brackets in HTML5 fragment mode phab:T29694
  • Some characters in HTML5 fragments mess with wikitext phab:T179544
  • Non-breaking space in header ID breaks anchor phab:T90902

IA upload (14)

  • Memory issues for IA-upload when converting large files to djvu phab:T161396
  • failure in ia-upload possibly due to accented characters phab:T165742
  • [ia-upload] Don't allow conversion from JP2 if there isn't a phab:T158394
  • Switch to chunked uploading for large DjVus phab:T175680
  • [mediawiki-api] Add support for chunked uploading phab:T176832

Syntax highlighting (11)

  • Selecting syntax-highlighted text in the 2017 source editor covers it completely when using Firefox on OSX phab:T175223
  • ProofreadPage conflict in text box size phab:T176449
  • Investigation: CodeMirror and WikEd gadget (and maybe other syntax highlighting gadgets) don't get along well phab:T178348
  • CodeMirror textarea is non-expandable phab:T170906

Wishlist Survey (8)

Internet Archive (5)

  • Investigation: Automatic archive for new external links phab:T177676

Range contribs (3)

  • Update.php fails with postgres due to ip_changes population phab:T177258

Maintenance (1)

  • Update Developers/Maintainers page for Community Tech projects phab:T178645

Sprint 55 (Oct 24-Nov 6)[edit]

13.5 story points

Grant metrics (8)

  • Setup basic application structure for Grant Metrics phab:T178116
  • Investigation: Figure out the database tables for grant metrics phab:T175767

XTools (2.5)

Wishlist Survey (2)

  • Make CentralNotice banner for 2017 Community Wishlist Survey phab:T178856

Draftquality model (1)

  • Enable draftquality model in ORES extension for enwiki phab:T179596

Sprint 54 (Sept 27-Oct 23)[edit]

36 story points

XTools (16)

  • Cache results of articleinfo API after so many requests for the same data phab:T175763
  • Top edits in XTools Edit Counter phab:T177730
  • Set up dedicated API server for XTools phab:T176826
  • Impose hard limit on number of revisions to analyze phab:T170652

Syntax highlighting (8)

  • Fix the default browser spellcheck functionality, or integrate a spell checker to CodeMirror phab:T95104

CopyPatrol (5)

  • Prevent blocked users from using CopyPatrol phab:T178681
  • Allow searching by page title or username in CopyPatrol phab:T171555

PageCuration (3)

  • PageTriageUtil::getTopTriagers() is not accurate phab:T168335

Grant metrics (2)

  • Investigation: Framework for Grant metrics tool phab:T175719

Global preferences (1)

  • GlobalPrefs reset page should be different from local one phab:T174755

Wikisource (1)

  • Add ability to set headers on individual multipart parts phab:T177266

Sprint 53 (Sept 12-26)[edit]

42 story points

Syntax highlighting (14)

  • Code Mirror shouldn't register its enable/disable tools with the New Wikitext Editor unless the beta feature is enabled phab:T173480
  • Function mw.toolbar.insertTags does not work with CodeMirror in Chrome and IE phab:T164905
  • Browser Ctrl-F search can't search text outside of current view phab:T177480
  • Word jumping (option+arrow key) doesn't work in CodeMirror for regular wikitext editor phab:T175378

XTools (11)

  • Edit Counter tool: Incorrect value field 'Longest block' phab:T174012
  • Optimize edit count queries in XTools phab:T163284

Range contributions (10)

  • Backport populateIpChanges fixes to MW 1.30 phab:T177035
  • Run ip_changes maintenance script on each wiki phab:T175105
  • Update Help:User_Contributions documentation to include IP range support phab:T177032
  • Issue with maintenance script: SELECTing revisions with high rev_id is painfully slow phab:T175962


  • Begin ACTRIAL on English Wikipedia phab:T175963
  • Logged out users get redirected to landing page when following a red link phab:T176100
  • Load EventLogging code on landing page phab:T175756
  • Send non-autoconfirmed users to a landing page when they go to a non-existent article directly phab:T175613
  • Investigation: See if there is a better way to handle VE tab control than bypassing the no article page phab:T175460

LoginNotify (1)

Sprint 52 (Aug 30-Sept 11)[edit]

44 story points + Range contributions (40)


  • Design review of article creation landing page phab:T173781
  • Visualize page create events for all wikis phab:T170850
  • ACW should intercept page creation via VisualEditor phab:T173605
  • Test ArticleCreationWorkflow on Test2 Wikipedia phab:T175302
  • Test ArticleCreationWorkflow on the Beta Cluster phab:T175054
  • Instrument event-logging data for ArticleCreationWorkflow phab:T173766
  • Count how many users get redirected by ArticleCreationWorkflow phab:T175036
  • Redirect non-autoconfirmed users directly to the Article Wizard phab:T174969

Global preferences (8)

Syntax highlighting (8)

XTools (8)

  • Add the Page History Gadget to new XTools phab:T170101
  • Convert xtools to use Intuition from its own repository phab:T165708

Range contributions (40)

  • Add basic IP range support to Special:Contributions phab:T163562

Sprint 51 (Aug 16-Aug 29)[edit]

24 story points

Syntax highlighting (8)

  • Editable content disappears when syntax highlight in code mirror is turned on phab:T174123
  • Triple apostrophe fails phab:T174060
  • CodeMirror is incompatible with new wikitext editor phab:T172958
  • Investigation: CodeMirror + New WikiText Editor performance issues phab:T161054

XTools (6)

  • Edit Counter caching for month and yearcounts does not account for the project phab:T174527
  • should be considered as phab:T170763
  • In Page History stats, number of "Links to this page" and "Redirects" reads 0 for all pages outside mainspace phab:T173483
  • Assetic is not minifying or versioning assets phab:T172907


Global Preferences (4)

  • Investigation: How will extensions opt specific preferences out of GlobalPreferences? phab:T173474
  • Don't hard-code page title in 'restore prefs' link construction phab:T173682

LoginNotify (2)

Sprint 50 (Aug 2-Aug 15)[edit]

17 story points (Wikimania)

Syntax highlighting (7)

LoginNotify (3)

XTools (3)

  • XTools Edit Counter does not report totals for each year counts, month count and timecard phab:T171277

Global preferences (2)

Section URLs (2)

Sprint 49 (July 18-Aug 1)[edit]

46 story points

XTools (30)


  • Resurrect minimalist version of ArticleCreationWorkflow extension (to build on further) phab:T170354

Global preferences (6)

  • GlobalPreferences causes infinite loop when loading user options (and caching disabled) phab:T166430
  • Investigation: Global preferences phab:T170222

Syntax Highlighting (1)

  • Deploy Wikitext Syntax Highlighting Beta feature to Simple English Wikipedia phab:T170630

Section headings URLs (1)

  • Page titles in URLs are being HTML-encoded and not URL-encoded phab:T171133

Sprint 48 (July 4-17)[edit]

84 story points

XTools (45)

LoginNotify (15)

Syntax highlighting (13)

  • Improve documentation for CodeMirror extension phab:T164806
  • Syntax highlighting has occasional toolbar errors phab:T169943
  • CodeMirror should use only the content language, not the user language phab:T170130
  • Design fixes for text styles for codemirror phab:T165178
  • Syntax highlighting popover for first-time user phab:T165003
  • Illustration for Syntax Highlighting beta feature phab:T165541
  • Deploy CodeMirror to testwiki phab:T169284


  • Record an event every time a new content namespace page is created phab:T150369

PageAssessments (5)

  • Special:PageAssessments with specified limit is off by one phab:T168600
  • Make the WikiProject or Page title field required for Page Assessments phab:T168599

Cookie blocking (1)

Takedown Tools

Sprint 46/47 (June 7-July 3)[edit]

44 story points - (two sprints together because of holiday/Wikilead)

XTools (13)

Grant metrics tool (5)

LoginNotify (5)


  • Record an event every time a new content namespace page is created phab:T150369

Syntax highlighting (5)

  • Convert syntax highlighting into a Beta feature phab:T165543
  • Illustration for Syntax Highlighting beta feature phab:T165541

Takedown Tools (5)

  • Split out the 3 standalone tools from the DMCA toolbox and deploy them on tool labs phab:T166400

PageAssessments (3)

  • Pagination in Special:PageAssessments loses the filter options phab:T164334

Range contributions (2)

  • Do test queries for range contributions to gauge performance of using different tables phab:T156318

PageTriage (1)

  • Remove the "Possible issues" section from PageTriage, if it is empty phab:T147220

Sprint 45/46 (May 9-June 6)[edit]

45 story points - (two sprints together because of the Hackathon)

Trust and Safety tools (10)

  • Investigate Child Protection Takedown Form for requested updates phab:T159467
  • Investigate DMCA Takedown Form for requested updates phab:T159898

Xtools (8)

  • Rewrite Edit Counter with new backend architecture phab:T160481
  • If revisions are revdel'd, articleinfo compares the surrounding edits as if it were one edit phab:T148857
  • XTools: Cleanup i18n messages phab:T163468

New Page Review (5)

  • Improve "Editors eligible for Autopatrol privilege" database report phab:T166350
  • List filters keep getting reset phab:T44254

Internet Archive (6)

  • Restrict IA Upload filenames to 240 bytes phab:T165014
  • IA Upload: "Failed to get specified page" DjVu generation error phab:T159796

Popular pages report (4)

  • Notify WikiProjects that popular page reports are back up and running again phab:T160717
  • Investigation: How can we improve the speed of the popular pages bot phab:T164178

Syntax highlighting (3)

URL section IDs (3)

  • Investigation: Browser support for Unicode section IDs and percent-encoded fragments in URLs phab:T157729

Cookie blocking (2)

  • Show total number of (auto)blocks to Special:AutoblockList and Special:BlockList phab:T163172

LoginNotify (2)

Misc onboarding (2)

  • Fix eslint issues in PropertySuggester phab:T166215
  • Unknown project should not cause an Internal Server Error phab:T166332

Sprint 44 (April 25-May 8)[edit]

33 story points

LoginNotify (14)

XTools (11)

  • XTools: Trying to get info about a talk page gives 500 internal server error phab:T163508
  • MediawikiApi::newFromPage() fails on non-XML HTML phab:T163527
  • Update docs to remove reference to running sql/meta.sql phab:T164127
  • Pages created interface gives error for most projects in new XTools phab:T163634
  • XTools: Top edits - 'All' namespaces option phab:T160721
  • Create XTools API with namespace endpoint, using JS to update to namespace selector phab:T162754

Internet Archive links (5)

Syntax highlighting (2)

  • Syntax highlighting: make ref tags and nowiki tags green phab:T161694

Cookie blocking (1)

Sprint 43 (April 11-24)[edit]

34 story points

LoginNotify (12)

  • Fix multiple/repetitive notifications with LoginNotify phab:T162104
  • Test LoginNotify Extension on Beta Cluster phab:T158878
  • Investigation: How does LoginNotify interface with CheckUser? phab:T162748
  • Investigation: Checkout all the @TODO, @FIXME, and @HACK comments in LoginNotify phab:T162750
  • Do a Privacy Check-In for LoginNotify extension phab:T161362

Xtools (9)

  • XTools: Clean up "Pages created" tool phab:T162752
  • Remove references to "Range Contributions" and "Autoblock" within xTools code phab:T163374
  • Fix caching problems with XTools phab:T162753
  • Bugs section on articleinfo returns incorrect results phab:T148046

Syntax highlighting (6)

  • CodeMirror forces loading of ext.wikiEditor module even when it isn't needed phab:T161475
  • Switch colors for templates and parser functions in CodeMirror phab:T162206

Popular pages (4)

Blocking tools (3)

  • Make sure cookie block EventLogging is only logging for edit actions phab:T162215

Sprint 42 (Mar 28-April 10)[edit]

36 story points

Xtools (11)

  • Build new front-end for xtools-articleinfo phab:T159395
  • Add a server-side caching service for the new XTools phab:T161057

LoginNotify (7)

  • Investigation: Why doesn't LoginNotify work well with MediaWiki Vagrant + the Echo role phab:T161058
  • Create a vagrant role for installing LoginNotify with vagrant phab:T162103

Mr. Z-bot's Popular pages (7)

Blocking (6)

Syntax highlighting (3)

  • Syntax highlighting: Take out the blue highlight for cursor location phab:T162204
  • Syntax highlighting: Better line spacing for H1s and H2s phab:T161559

CopyPatrol (2)

Sprint 41 (Mar 14-27)[edit]

38 story points

Mr Z-bot's Popular Pages (20)

  • Have PopularPages bot only overwrite the list section of the report - phab:T160683
  • Make the popular pages bot database and config page data sync - phab:T160787
  • Include pageviews of redirects in Popular Pages reports - phab:T160201
  • Assign all Popular Page reports to Category:Lists of popular pages by WikiProject - phab:T160688
  • Popularpages bot not generating reports for some projects and task forces - phab:T159774
  • Add missing projects to Popular_pages_config.json - phab:T160718
  • Build new bot for Mr.Z's popular pages report - phab:T156857
  • Make the popular pages bot pickup from where it left off in case it gets killed prematurely - phab:159776

XTools (8)

Cookie blocking (4)

  • Test cookie blocking on Test Wikipedia - phab:T158129
  • CookieSetOnAutoblock for an infinite block would block the computer forever, add expiration to LocalStorage entry - phab:T152952

LoginNotify (3)

  • Improve failed login notifications in LoginNotify extension - phab:T160031

Sprint 40 (Feb 28-Mar 13)[edit]

18 story points

Global gadgets (5)

Mr. Zbot (5)

  • Build new configuration interface for Mr.Z's popular pages report on Tool Labs (phab:T1568)

Xtools (5)

IA Uploads (3)

  • IA Upload fails to upload AiVenerabiliParrochiDioc.S.Miniato (phab:T159775)
  • IA Upload fails for केकावलि (phab:T159516)
  • CommonsController::normalizeLanguageCode() fails in cases without languages (phab:T158398)

Sprint 38/39 (Feb 1-Feb 27)[edit]

33 story points

LoginNotify (6)

PageAssessments (6)

  • Project names sometimes need to be cleaned up before using them (phab:T158245)
  • Assessments with cleaned project titles don't get recorded (phab:T158932)
  • Turn on subproject support for PageAssessments in production (phab:T157654)
  • Add support for task forces to PageAssessments (phab:T154216)

Djvu file generation for WikiSource (5)

  • Add automatic Djvu generation to the IA Upload tool (phab:T157410)
  • Investigation: Could we build a Tool Labs project to generate Djvu files for WikiSource (phab:T154538)
  • Undefined index: scope_opener in MediaWiki/Sniffs/Usage/ExtendClassUsageSniff.php (phab:T154731)

Edit summary length (5)

  • Investigation: Length of edit summaries for non-Latin languages (phab:T153333)

XTools (4)

  • Migrate XTools from Ubuntu Precise to Trusty (phab:T157123)
  • Improve documentation for setting up XTools on a local machine (phab:T157609)
  • Investigation: Plan for rewriting XTools (phab:T154551)

Section headings for non-Latin languages (3)

  • Investigation: Section headings for non-Latin languages (phab:T153334)

CopyPatrol (2)

  • CopyPatrol: Add entry number in interface & allow direct link to an entry (phab:T154811)

Block cookies (1)

  • CookieSetOnAutoblock doesn't verify cookie before using it allowing an attacker to enumerate revdeleted users (phab:T152951)

Mr Zbot's popular pages report (1)

  • Set up popularpages-dev project on Tool Labs and an associated GitHub repo (phab:T156854)

Sprint 37 (Jan 17-30)[edit]

7 story points

LoginNotify (3)

  • Investigation: What would be the best way to support loginwiki from LoginNotify (phab:T154064)

Block cookie (3)

  • Set-up EventLogging to see how often blocked users are blocked via cookie (phab:T146230)

Category Sorting (1)

  • German Wikisource: Alphabetical order in the categories (collation) (phab:T155916)

Sprint 36 (Jan 4-16)[edit]

(incl Dev summit/All hands week) 8 story points

Fix MrZbot (3)

  • Investigation: Fix Mr.Z-bot's popular pages report (phab:T153790)

Program Dashboard (3)

  • Show the campaign name when you create a program (phab:T153924)
  • Ability to remove programs from the Campaign:Programs tab (phab:T152748)

Page Assessments (2)

  • Sometimes PageAssessments will try to record an assessment for page_id 0 (phab:T154859)
  • Clean out unused projects from page_assessments_projects table regularly (phab:T153026)

Sprint 35 (Dec 20-Jan 3)[edit]

(incl Christmas week) 21 story points

Program Dashboard (11)

Notify on unsuccessful login (5)

  • Investigation: Notify on multiple unsuccessful login attempts (phab:T153335)

Han characters for Wikisource (3)

  • Investigation: Create new Han characters with IDS extension for Wikisource (phab:T153796)

Block cookies (2)

  • Block cookies should expire after 24 hours or the length of the actual block, whichever is shorter (phab:T153347)
  • Flaky unit test "UserTest::testAutoblockCookieInfiniteExpiry" (phab:T153527)

Sprint 34 (Dec 6-19)[edit]

45.5 story points

Program Dashboard (21)

CopyPatrol (10)

  • Port CopyPatrol to Czech Wikipedia (phab:T151609)
  • CopyPatrol: restore user whitelist functionality (phab:T150921)
  • CopyPatrol: Manage errors of the Whitelist's content parser (phab:T151355)
  • CopyPatrol: List all supported languages in the navbar (phab:T152362)
  • Errors when accessing non-supported languages (phab:T152173)
  • French translations don't show up on Copypatrol interface (phab:T151774)

Page Assessments (5)

  • Convert PageAssessments projects API from a property query to a list query (T153164)
  • Frequent duplicate key errors by page assessments (phab:T152080)
  • TypeError: exclude.indexOf is not a function (phab:T153165)
  • Add auto-suggest to Special:PageAssessments form fields (phab:T152758)
  • Database error when paginating through results at Special:PageAssessments (phab:T152756)

Numerical sorting (3.5)

Cross-wiki watchlist (3)

  • Fully populate local_user_id and global_user_id fields in production (phab:T148242)

New Page Patrol (3)

  • Update PageTriage speedy deletion tag list to match Twinkle's (phab:T150628)

Sprint 33 (Nov 22-Dec 5)[edit]

25 story points

CopyPatrol (12)

  • Logging in from fr Copypatrol redirects to en Copypatrol after login (T150955)
  • Switch CopyPatrol to use PageAssessments for WikiProject data (T147579)
  • Make WikiProjects features optional per wiki in CopyPatrol (T152134)
  • Add a dropdown to Copypatrol UI to switch between different language versions (T150956)
  • CopyPatrol: restore user whitelist functionality (T150921)

PageAssessments (8)

  • Create a report interface for PageAssessments (T120407)

Cross-wiki watchlist (3)

  • Notify stewards and global renamers about T148242 (T150835)

Blocking tools (1)

  • Switching $wgCookieSetOnAutoblock from true to false can cause fatal error (T151097)

Sprint 32 (Nov 8-21)[edit]

31 story points

Blocking tools (15)

  • Send a cookie with each block (T5233)
  • Set-up EventLogging to see how often blocked users are blocked via cookie (T146230)
  • Investigation: Adding a check for the block cookie to the account creation process (T149330)
  • Document $wgCookieSetOnAutoblock on (T150888)

CopyPatrol (11)

  • Get Eranbot to run on French Wikipedia (T145432)
  • Add feature flag for block cookie behavior (T147610)
  • CopyPatrol: Close Compare panels automatically when you finish a case (T141820)
  • French CopyPatrol not detecting redlinks for User and User Talk pages (T150911)
  • Community Tech bot incorrectly reviewing articles on French CopyPatrol (T150904)
  • 404 when logging out of CopyPatrol (T150919)
  • CopyPatrol: Review buttons stay in loading state (T150920)
  • CopyPatrol: user links on leaderboard are broken (T150928)

Numerical sorting (3)

  • Propose on meta that "uca-default-u-kn" be the default collation (T150270)

New Page Patrol (1)

  • Noindex template feature should be restricted to new articles (T149538)

Cross-wiki watchlist (1)

  • Fully populate local_user_id and global_user_id fields in Beta (T148241)

Sprint 31 (Oct 25-Nov 7)[edit]

46.5 story points

Programs Dashboard (11)

  • Campaign: Programs page (T148806)
  • New features for Campaign model in Dashboard (T148796)

CopyPatrol (10)

  • Abstract CopyPatrol code to not assume everything is English Wikipedia (T145436)
  • Register CopyPatrol tool with (T146867)

Wishlist Survey (6)

  • Design and create 2016 wishlist page (T147954)
  • Write a bot to count some stuff on the Community Wishlist Survey and post it on a page (T149337)

Blocking tools (5)

  • Investigation: How to add IP range support to Special:Contributions (T147664)

Cross-wiki watchlist (5)

  • Create a maintenance script for populating the local_user_id and global_user_id fields in the centralauth localuser table (T142503)

Numerical sorting (5)

  • Convert more wikis to numerical sorting (T146675)
  • Convert wikis to numerical sorting batch #3 (T148682)
  • Set $wgCategoryCollation to 'uca-hr' on Croatian Wikipedia and rebuild category sort keys (T148749)

Google OCR for Indic Wikisources (3)

  • Make Google OCR API on Tool Labs work under Kubernetes (T146311)

Pageviews Analysis (1)

  • Data since 16 October not showing for some users (T149058)

Archive external links (.5)

  • Bump packagist version number for deadlinkchecker package (T149153)

Sprint 30 (Oct 11-24)[edit]

16 story points

Programs Dashboard (6)

  • Add support for setting the time zone of a program (T140306)
  • Investigation: Changing cohorts into campaigns (T144861)

Cross-wiki watchlist (3)

  • Have CentralAuth populate the local_user_id and global_user_id columns as new users are attached (T142507)

New Page Patrol (3)

  • Unreviewed new articles on English Wikipedia should be marked as noindex (T147544)

CopyPatrol internationalization (2)

  • Get WikiProject script to scrape WikiProjects from French Wikipedia (T145433)

Numerical sorting (1)

  • Numeric collation doesn't correctly sort titles with leading zeros (T148774)

Page Assessments (1)

  • When a main namespace page is saved that has an {{#assessment}} on it's talk page, the assessment data is deleted from the database (T147906)

Sprint 29 (Sept 27-Oct 10)[edit]

27 story points

Programs Dashboard (11)

  • Add support for start/end times in Programs Dashboard (T125546)
  • Vocabulary cleanup in Programs Dashboard messaging (T141327)

New Page Patrol (10)

  • Investigation: Number of unreviewed pages on English Wikipedia skyrocketing in last few months (T146959)
  • Create interface pages to mimic Article Creation Workflow (T147225)
  • Update PageTriage maintenance list to match Twinkle's (T147224)

CopyPatrol (3)

  • Internationalize CopyPatrol interface (T145435)

PageAssessments (3)

  • Deploy PageAssessments to English Wikipedia (T146679)

Sprint 28 (Sept 14-26)[edit]

8 story points

Google OCR for Indic Wikisources (5)

  • Test and deploy the OCR gadget on Wikisource (T142770)
  • Move Google OCR script into MediaWiki namespace and update all references to it (T145567)
  • Get Google OCR tool to reliably load in the toolbar (T145725)

GLAM (3)

  • Investigation: Copyvio tools for Commons (T145165)

Sprint 27 (Aug 30-Sept 13)[edit]

43 story points

Google OCR for Indic Wikisources (12)

  • Improve web interface for (T145104)
  • Create a ProofreadPage wikitext editor user script for Wikisource which uses Google Vision API to do OCR (T142769)
  • Create a wrapper API on Tool Labs to interact with Google Vision API (T142768)
  • Allow the Labs Google API proxy to handle multiple Google APIs (T144290)

Numerical sorting (8)

  • Switch English Wikipedia to uca-default collation (T136150)

CopyPatrol (6)

  • Investigation: CopyPatrol in other languages (T141379)
  • Add unit tests for CopyPatrol (T135532)

Cross-wiki watchlist (5)

  • Add local_user_id and global_user_id fields to localuser table in centralauth database (T141951)

External links to archive (4)

  • Make the DeadlinkChecker package versioned (T144435)
  • Create acceptance tests for IABot (T140386)

PageAssessments (4)

  • Test PageAssessements on English Wikivoyage (T142056)
  • If the last assessment on a page is deleted, the page_assessments record for it doesn't get deleted (T144841)

Grants Review app (4)

  • Manage Users page on Grants review app shows unblocked users only (T144032)
  • Fix ParsoidClient to talk to RESTBase instead of Parsoid (T114186)

Pageviews Analysis (0)

  • Restrict Topviews to showing data only for individual days or months (T142403)

Sprint 26 (Aug 17-29)[edit]

35 story points

Programs Dashboard:

  • Regularly backup program dashboard data (T140322)

Numerical sorting:

  • Notify English Wikipedia of switch to uca-default collation (T144081)
  • Test numeric sorting on Swedish Wikipedia (T142113)

External links to archive:

  • Get IABot to use new CheckIfDead package (T140388)
  • Create automated install/repeatable dev environment for IABot (T141799)
  • Break out CheckIfDead class into a separate GitHub repo (T140135)


  • AbuseFilter: Function ccnorm shouldn't convert "I" and "L" to "1", "O" to "0" and "S" to "5" (T29987)
  • Update Extension:AbuseFilter documentation to reflect new norm/ccnorm usage (T143184)


  • CopyPatrol: Whitelist for privileged users (T140204)
  • CopyPatrol: Turn top 5 leaderboard into top 10 (T143061)

Sprint 25 (Aug 2-16)[edit]

32 story points

External links to archive:

  • Make the config parser in deadlink.php accessible to tests (T141798)
  • If site isn't in externallinks_paywall table, analyzing links from the site throws error (T142159)
  • Figure out how to setup local dev environment for testing IAbot (T141797)
  • Make the config parser in deadlink.php accessible to tests (T141798)


  • Autoscroll compare panels to copyvio material (T142010)
  • CopyPatrol: Fix WikiProject bubbles with # and 2F (T141824)
  • Write documentation for CopyPatrol (T142160)
  • Autoscroll compare panels to copyvio material (T142010)

Programs Dashboard:

  • Allow programs to be only 1 day long in Programs Dashboard (T140793)

Numerical sorting:

  • Set $wgCategoryCollation to 'uca-mk-u-kn' on Macedonian wikis and rebuild category sort keys (T26953)

Google OCR for Indic Wikisource:

  • Investigation: Tool to use Google OCR in Indic language Wikisources (T140037)

Cross-wiki watchlist:

  • [RFC] Devise plan for a cross-wiki watchlist back-end (T126641)

Page assessments:

  • Investigation: Which Wikipedias and other Wikimedia wikis have WikiProjects that use quality assessment systems? (T141428)

Sprint 24 (July 19-Aug 1)[edit]

27 story points


  • Add interface to filter by WikiProject to CopyPatrol (T132350)
  • Expand EranBot database to store WikiProjects and write cron job to update it regularly, also use this new data (T139083)
  • Include scores in CopyPatrol interface for each source URL (T139209)
  • Filter out all cases before June 20, 2016 (T138317)
  • Duplicate entries in CopyPatrol (T140815)

Numerical sorting:

  • Natural number sorting in category listings (T8948)
  • Enable numeric sorting on test wikipedia (T141433)

Structured data on Commons:

  • Investigation: Assistance with structured data on Commons (T121731)

Miscellaneous fixes:

  • Run query to find all AbuseFilter filters that use ccnorm() or norm() (T140791)

Sprint 23 (July 5-18)[edit]

31 story points


  • "No editor found" lasts for hours (T138984)
  • Add footer in CopyPatrol that links to feedback page and source (T139128)
  • Add header and footer to CopyPatrol (T139398)
  • Add API framework to CopyPatrol (T139082)
  • CopyPatrol should show ORES scores (T139009)
  • Add ability to filter by Drafts (T139542)
  • Create a reviewer leaderboard for CopyPatrol (T138664)
  • Filter out pages that have been deleted from CopyPatrol interface (T134289)
  • Let users undo only their own reviews (T139467)

Cross-wiki watchlist:

  • Investigation: Learn exactly how the current watchlist works in preparation for working on cross-wiki watchlists (T126639)

External links to archive:

  • Investigate causes for deadlinks found after trial (T136728)


  • Test PageAssessements on test.wikipedia (T137918)

Sprint 22 (June 21-July 4)[edit]

25.5 story points


  • Move CopyPatrol tool to new URL (T137223)
  • CopyPatrol: add Article and Source tags, history link (T137909)
  • CopyPatrol: Show the timestamp of the edit (T138098)
  • Investigation: See if Earwig's API is using the correct revision of the Wikipedia page for comparisons (T137985)
  • Improve CopyPatrol performance (T138508)
  • Have CopyPatrol output editor's IP address if they are anonymous (T137382)
  • Make sure no_data error messages from Earwig's API are output in CopyPatrol (T137980)
  • Add thousands separator in edit count (T138786)
  • Columns don't fill up width of page in CopyPatrol (T138514)
  • CopyPatrol visual design tweaks (T137913)
  • Truncate long URLs in CopyPatrol (T138671)
  • CopyPatrol: No action needed button reduces in size when browser size decreases (T137335)
  • Add "load more" button to Tool Labs interface for Plagiabot (T132348)
  • Compare panel load message: "Loading possibly copyvio source..." (T138985)
  • Show the timestamp of the edit (T138098)
  • Weird URL after logging into CopyPatrol (T138475)
  • CopyPatrol does not correctly handle pages in Draft namespace (T137858)

Sprint 21 (June 7-20)[edit]

62.5 story points


  • Switch the feedback link at the top of the page to Community Tech page (T137981)
  • Add "reviewed by" data to CopyPatrol interface (T135881)
  • Filters by triage state for Plagiabot tool labs interface (T132352)
  • Restrict use of CopyPatrol tool to authenticated users (T137605)
  • Store username of reviewer and timestamp of review in database for CopyPatrol (T135887)
  • Show the comparison from Earwig's detector on the CopyPatrol interface (T132832)
  • Add OAuth support to Tool Labs interface for Eranbot (T132081)
  • Improve backend code for CopyPatrol (T135300)
  • Use an HTML templating library for CopyPatrol (T135531)
  • Create an output API for Earwig's Copyvio Detector Tool (T132949)
  • Show privacy notice in CopyPatrol when a user logs in (T136450)
  • CopyPatrol interface columns collide too soon (T135663)

Migrate dead links to archives:

  • Titles returned by projectpages API are not normalized (T137172)

Numerical sorting:

  • Investigation: Figure out how to switch as many wikis as possible over to uca-xx collations (T136113)

Google API, related to CopyVio projects:

  • Investigation: Can we find a new search API for CorenSearchBot and Copyvio Detector tool? (T125459)
  • Help CorenBot migrate to a new API (T131169)

Sprint 20 (May 24-June 6)[edit]

24.5 story points

Pageview stats tool:

  • Limit Massviews interface to groups with 500 or fewer pages (T135530)
  • Massviews: Source explanation (T135443)

Migrate dead links to archives:

  • Help review dead links for Cyberbot II Phase 2 trial (T136359)
  • Add ability for InternetArchiveBot to skip paywalled links (T132940)

Google API, related to CopyVio projects:

  • Create project Google-api-proxy (T136862)
  • Change http to https in Community Tech bot API usages (and other places) (T135797)
  • Create an API request proxy so that Tool Labs tools can access the Google API from a single IP address (T136720)

Page Assessments:

  • Test PageAssessments extension on Beta Labs (T125551)

Sprint 19 (May 10-23)[edit]

21 story points


  • Add interface to tool labs interface for Plagiabot for setting triage state (T132079)
  • Item structure for new Plagiabot interface (T132831)
  • WikiProject handling on Plagiabot interface (T134867)

Numerical sorting:

  • UpdateCollation.php script prohibitively slow for very large wikis (T58041)

WikiProject article assessment:

  • Move WikiProject names to separate table for PageAssessments (T130844)


  • Citation Bot not logged in when trying to do auto-expansion (T128926)

Sprint 18 (April 26-May 9)[edit]

30 story points

CopyPatrol interface:

  • Develop Tool Labs interface for Plagiabot (first iteration) (T132126)
  • Create an API request proxy so that Tool Labs tools can access the Yandex API from a single IP address (T132943)

Replace dead external links with archive:

  • Find out what causes weird false positive for CheckIfDead (T132939)
  • Fix broken unit tests for CheckIfDead class (T134220)

WikiProject article assessment:

  • API for WikiProject article assessment data (T119997)

Pageviews Analysis:

Numerical sorting:

  • Add new indexes from eec016ece6d2b30addcdf3d3efcc2ba59b10e858 to production databases (T130692)

Sprint 17 (April 12-April 25)[edit]

15 story points

Pageview Analysis:

  • Show notice on Pageviews Analysis for people with adblocker (T131167)
  • Make Pageviews Analysis work even when cookies are disabled (T132358)

Replace dead external links with archive:

  • Add detection for 404.htm, 404.html, or /404/ to checkIfDead class (T132074)
  • Create documentation for Cyberbot II / InternetArchiveBot (T125183)
  • For checkIfDead::processResult(), only check for redirect to root if the URL has content after the domain name (T132651)

Improve diff compare screen:

  • Move new diffs prototype to a Commtech Labs instance (T132378)

Sprint 16 (March 29-April 11)[edit]

15 story points

Copyvio detection:

  • Investigation: Improve copy and paste detection bot (T121897)
  • Investigation: Improve copy and paste detection bot (T131083)
  • Help Copyvio Detector migrate to a new API (T131175)

Pageview stats:

  • Pageviews tool doesn't work for projects that begin with www, like (T132007)

Sprint 15 (March 15-28)[edit]

22 story points

Migrate dead external links to archive:

  • Set timeout for tests for deadlink checking (T130980)
  • Dead links logging interface on Tool Labs: Output API (T128685), Get Cyberbot to use logging API (T130035), Logging interface doesn't show bot names (T130975), Add label-spacing to bot names (T129377)

Pageviews tool:

  • Add languages selector to Settings (T128770)

Sprint 14 (March 1-14)[edit]

42 story points

Migrate dead external links to archive:

  • Enhance checkifDead class to detect when URLs redirect to the domain tool (T127749)
  • Dead links logging interface on Tool Labs: Create centralized logging API (T126363), Create web interface (T126364), Tests (T128105), Password system (T128111), Documentation (T126365)

Pageviews stats:

  • Add 18n support to pv tool with Intuition (T128103), Register pv tool with translatewiki (T128768)

Numerical sorting:

Sprint 13 (Feb 16 - 29)[edit]

18 story points

  • Pageviews tool: Improve csv output format (T127143) Investigate multilingual support (T127356)
  • Migrate dead external links to archive: Investigate advanced dead link detection (T125181), Investigate other bots' approaches (T120850)

Sprint 12 (Feb 2 – 15)[edit]

22.5 story points

  • Gadgets 2.0: "Hidden" doesn't work T41025, Importing script only imports first skin T119008
  • Cross-wiki watchlist investigation: T120853
  • Reference toolbar gadget not functional on Kannada Wikipedia: T125285
  • PageAssessments: Make sure it works correctly when pages are deleted T124823, Normalize DB schema T124798, Write tests T120849

Sprint 11 (Jan 19 – Feb 1)[edit]

25 story points

Sprint 10 (Dec 22 – Jan 18)[edit]

24 story points

Sprint 9 (Dec 8 – Dec 21)[edit]

20 story points

Sprint 8 (Nov 24 – Dec 7)[edit]

Community Wishlist Survey

9 story points

Sprint 7 (Nov 10 – Nov 23)[edit]

Community Wishlist Survey

26 story points

Sprint 6 (Oct 27 – Nov 9)[edit]

35 story points

  • task T108513 - [1.26-wmf17 Regression] Dismissed site notice flashes briefly on page load
  • task T103285 - HotCat doesn't load after saving a page in VisualEditor (must refresh/reload first) [AOI]
  • task T113577 - Make "Forgotten Articles" report available on German Wikipedia
  • task T117120 - Special:GadgetUsage does not filter out non-existent/removed gadgets
  • Fixing French gadgets: T117590, T117760, T117758

Sprint 5 (Oct 13 – Oct 26)[edit]

  • task T110149 - [AOI] Fix HotCat on wikis where it is broken
  • task T113576 - Fix broken "Unused file redirects" report
  • task T115152 - Create a Special:GadgetUsage QueryPage to show Gadget usage stats per wiki
  • task T115162 - [AOI][Citation bot] `|display-authors=9` no longer necessary for exactly nine authors
  • task T114335 - [AOI] Prototype for RevisionSlider

Sprint 4 (Sept 29 – Oct 12)[edit]

  • task T113429 - [AOI][Citation Bot] Remove bogus revision number from edit summaries
  • task T110162 - [AOI] Create documentation for Quick Intersection tool

Sprint 3 (Sept 14 – Sept 28)[edit]

  • task T110505 - Fix broken Forgotten Articles report
  • task T111786 - Fix broken Pages with most revisions report
  • task T111813 - Fix broken "Editors eligible for Autopatrol privilege report"
  • task T112304 - Fix broken "Talk pages by size" report
  • task T113576 - Fix broken "Unused file redirects" report
  • task T110778 - [AOI] Create a test suite for Copyvio Detector
  • task T110773 - [AOI][Citation Bot] Fix text.php
  • task T111891 - [AOI][Citation Bot] Fix Citation bot's handling of multiple author names
  • task T112038 - [AOI][Citation Bot] Replace right single quotation marks with ' in author names
  • task T110777 - [AOI][Citation Bot] Fix doibot's manual citation checking capabilities (doibot.html/doibot.php)
  • task T110776 - [AOI][Citation Bot] Get doibot unblocked on enwiki

Sprint 2 (Aug 25 – Sept 13)[edit]

Sprint 1 (Aug 11 – Aug 24)[edit]

  • task T9937 - Exclude disambiguation pages from random page feature
  • task T109076 - Gadgets not working on English Wikiquote
  • task T109370 - [AOI] Fix thumbnail display in FlickrFree tool

Before Sprint 1[edit]

  • task T32399 - SecurePoll extension erroneously adds <p> tags to vote input title attributes (tooltips)
  • task T99768 - Rendering of wikicode fails in some fields
  • task T99920 - Custom error should supplement rather than replace error messages
  • task T103496 - Special:Gather/all/recent pagination is broken
  • task T103974 - Special:Gather/all/recent pagination is broken without JS
  • task T107508 - UploadWizard file upload status runs into action button