User talk:SoledadKabocha/linkclassifier

TODO for on-demand mode
Make the portlet link remove itself when clicked. This might require moving the logic that adds the link into linkclassifier.js, as opposed to asking the user to manually add code to the skin. Compare the way that markblocked does it.

(This is just a note to myself; I will not ask Anomie about this until I have implemented it successfully myself.) --SoledadKabocha (talk) 22:27, 30 October 2012 (UTC) (marked first paragraph as done 18:28, 2 November 2012 (UTC))

Categories TODO

 * Check for certain categories of problematic BLP articles (decide which)
 * Category:All articles with dead external links
 * Category:Articles with invalid ISBNs - ditto
 * Category:Wikipedia shortcut box first parameter needs fixing - ditto
 * Look over subcategories of Category:Wikipedia articles with missing information
 * Category:Articles with excessive non-free image content (deprecated? only contains one article right now)
 * The categories in User:Anomie/unattributed-image-finder.js (done enough?)
 * Other aspects of image copyright status, e.g. Category:Copy to Wikimedia Commons subcats
 * Something to do with geo-coordinates
 * Category:Articles with obsolete information, Category:Wikipedia articles in need of updating
 * Category:All articles lacking in-text citations
 * Should Category:Redirects to list entries be given its own class? It is currently under redirect-possibilities, but it is also in some sense a special case of redirects to sections...
 * Look over Special:PrefixIndex/Category:Transwiki (note that some are article categories while others are talk categories)
 * What should we do about Category:Unapproved Wikipedia bots?
 * What about Category:Redirects to disambiguation pages - to what extent does this overlap w/ intentional disambiguations?
 * Consider detecting uncategorized pages and adding a class accordingly
 * Category:All Wikipedia bots?

--SoledadKabocha (talk) 18:30, 2 November 2012 (UTC) (last edit 05:03, 28 May 2015 (UTC))

General code maintenance
--SoledadKabocha (talk) 22:42, 3 March 2013 (UTC) (last edit 05:04, 28 May 2015 (UTC))
 * Alphabetize the added categories
 * Consider creating User:SoledadKabocha/linkclassifier-lite.js which contains only the categories from the original linkclassifier but incorporates my other code changes
 * Consider creating User:SoledadKabocha/linkclassifier-portable.js which contains only categories that are meaningful on multiple wikis, perhaps because their names are coded as MediaWiki configuration parameters, e.g. Category:Noindexed pages, Category:Pages containing omitted template arguments, Category:Pages where expansion depth is exceeded, Category:Pages where node count is exceeded, Category:Pages where post-expand include size is exceeded
 * (why didn't it seem to work?)
 * Figure out how to prevent the script from catching section edit links on pages viewed through redirects, e.g.
 * Figure out why the tooltip gets removed entirely when the link is a redirect broken due to its target beginning with #, e.g. Talk:Thillai Nataraja Temple as of [//en.wikipedia.org/w/index.php?title=Talk:Thillai_Nataraja_Temple&oldid=575043157 this revision] (TODO: Create a test case in my own sandbox)
 * To make function chaining work more reliably, add a redundant method of counting API requests remaining (much as I [//en.wikipedia.org/w/index.php?title=User:SoledadKabocha/markBlockedPlus.js&diff=582304990&oldid=582243848 tried in markBlockedPlus itself], except it is more difficult to predict the number of API requests that will be needed here). The problem is that in some cases either (1) markBlockedPlus starts too early and allows linkclassifier to stomp on its tooltips, or less commonly (2) markBlockedPlus doesn't seem to run at all. Was the jQuery library changed in a recent MW version to behave less deterministically?
 * Figure out how to fix the failure on User talk:ELISA N susie (I know the script is failing because it never gets to calling markBlockedPlus, which should be visible on the "User page" tab, and the Uninterruptible handler only gets removed after the 20-second timeout. I tried [//en.wikipedia.org/w/index.php?title=User:SoledadKabocha/linkclassifier.js&diff=588103540&oldid=588020647 this fix] but it didn't work) (incomplete: probably not a valid test case now that a block template has been added to said page. I'd have to blank my own user talk to create a similar case, and that might get me into some trouble)
 * Update: New test case found: Talk:Hybrid balance ([//en.wikipedia.org/w/index.php?title=Talk:Hybrid_balance&oldid=266781412 permanent link], which probably won't reproduce the issue due to the revision-info message) (fixed)
 * To protect against future changes to the  mechanism: (removed old inaccurate content)

Invalid Unicode issue
[//en.wikipedia.org/w/index.php?title=User:SoledadKabocha/linkclassifier.js&diff=634012816&oldid=629932254 This edit summary] should also have mentioned accented letters. (TODO: Document which letters exactly.) --SoledadKabocha (talk) 01:08, 16 November 2014 (UTC)

Critical bugs
Investigate why, on the article Pyromania (permanent link), the script correctly classifies some links in the lede but sometimes fails before it manages to add the  class to the "child pyromaniacs" link in the "Epidemiology" section. (NB: The example link is piped as it appears in the article.) When it fails, a hard reload sometimes helps. --SoledadKabocha (talk) 19:05, 30 December 2014 (UTC) (+ 17:37, 2 January 2015 (UTC))
 * A similar problem with the link to National Geographic Magazine occurs in Swarm intelligence. All other redirect links in that article appear to be classified correctly. --SoledadKabocha (talk) 02:28, 29 June 2015 (UTC)
 * The above issue probably resulted from the use of synchronous AJAX in my common.js and other scripts; it may not have been a legitimate bug in this script. New issue:
 * On very long articles such as List of Internet top-level domains, the linkclassifier-finished class is sometimes added before the script is really finished. --SoledadKabocha (talk) 18:27, 26 November 2015 (UTC)