Wikipedia:Bots/Requests for approval/JerryBot


 * The following discussion is an archived debate. Please do not modify it. Subsequent comments should be made in a new section. The result of the discussion was Symbol keep vote.svg Approved.

JerryBot
Operator:  Jerry  delusional ¤ kangaroo

Unsupervised

Automatic or Manually Assisted: Automatic

Programming Language(s): PHP (using the PHPediaWiki framework). (See Bot_requests).

Function Summary: Checks Template:Main transclusions for linked page status.

Edit period(s) (e.g. Continuous, daily, one time run): This is configurable from an on-wiki parameter page.

Already has a bot flag (Y/N): N

Function Details: To check all instances of, and scrutinize the target of the link. If the link is a redirect, the target specified in the template is updated. If the link is a redlink or a dab, then maintenance lists are created for users to investigate and correct. All actions are logged on an onwiki log-page.

Discussion
With this bot, it will be making 1 edit 2 edits per run (which I believe will be every couple of hours max) into the User: space, I don't believe a separate bot account (it can use mine, LoxyBot) or flag are required. Foxy Loxy Pounce! 00:19, 1 January 2009 (UTC)
 * From the request that I made (linked above), the bot would change the target in transclusions of Template:Main if the current target is a redirect. This could potentially be thousands of edits to mainspace per run.  Was/is this functionality included?  Also, I had requested for this to be a new bot for me to operate; did you change your intentions after you wrote the code for me?  Jerry   delusional ¤ kangaroo 14:49, 2 January 2009 (UTC)
 * Ah yes, I missed #6, I'll add that in, and if you want to operate the bot, you can, I was going to have it run from my server and you can turn it on/off and set all of the settings onwiki (My idea was something like the instructions I wrote up here), but I can just hand you the code when it's ready (I must warn you it's CC-BY-SA GPL, so you need to continuously release the source onwiki) and you can run it yourself. Requirements for the bot can be found here. Foxy Loxy  Pounce! 00:48, 3 January 2009 (UTC)
 * Thank-you. I do wish to operate the bot, as my longer-term goal is to become a bot-developer/operator.  I am perfectly willing to continuously release the code for this task under a compatible license.  Future tasks for this bot might be written by me in VB or another language/platform; I may or may not release the source-code for those (depending on whether I use purchased or otherwise restricted-release controls, libraries or code in them or not).  I would appreciate, in addition to having the source code, if you would help me (via email, irc, IM or similar) to get my PC set-up to operate it, if this is not extremely simple and well-documented somewhere.  Thanks.  Jerry   delusional ¤ kangaroo 21:26, 3 January 2009 (UTC)
 * Thats fine, I would be quite willing to help you set up the bot once I have ironed out all the bugs. Just a quick question, if your going to be running it from your own computer, it would be simpler to have the controls on your computer, and not set via Wikipedia, is this ok? Foxy Loxy  Pounce! 23:32, 3 January 2009 (UTC)
 * It is okay, but not ideal. I edit remotely and travel alot.  I plan on this bot running on an old Windows box at my home.  I was hoping to have some onwiki control of the bot, but if this is proving difficult to implement, then that can be waived.  I can always block the account tempoarily if it is not doing what I want it to do.  Jerry   delusional ¤ kangaroo 03:00, 4 January 2009 (UTC)
 * Comment: some ops have found it useful to have remote controls, like a URL to their private server with an off/on switch. That might be a long-term coding goal that would resolve the issue.  MBisanz  talk 13:47, 5 January 2009 (UTC)

(outdent) I would welcome inspection of the code so far (and comments/feedback), it can be found here. Foxy Loxy Pounce! 23:38, 5 January 2009 (UTC)

Bypassing redirects is bad. --MZMcBride (talk) 01:44, 12 January 2009 (UTC)
 * So you are saying that if we have a link in an article to Foos, and foos is a redirect to Foose which is a redirect to Foo, that updating the original link to go directly to Foo is a bad idea? Could you please explain your reasoning?
 * Please note that this bot is *not* going to go around indiscriminately replacing redirects with direct links. It is only going to do that for transclusions of template:main.  It will never pipe the original target text, it will just replace the redirect target to the ultimate destination.  This will fix double-redirects, and will correct the problem of the Special:whatlinkshere not containing all of the pages that do in-fact take a reader to the page.  Template:Main is *never* to be used to point to possible future articles that do not exist today, so all the normal hooplah about bypassing redirects is a null argument in this case.
 * The template is only to be used in summary style articles that point back to the original article from which they have been derived. Also, template:main is a noprint class, so unprintworthy article titles are not a concern here, either.  Jerry  delusional ¤ kangaroo 19:04, 15 January 2009 (UTC)

 To check all instances of, and scrutinize the target of the link. If the link is a redirect, the target specified in the template is updated. That reads to me that any time the bot comes across a redirect, it will bypass it. The reasons it should not do that are laid out somewhere on the site.... --MZMcBride (talk) 01:04, 16 January 2009 (UTC)
 * I think you are confused, somehow. Let me explain it in more explicit steps, to see if it helps you:
 * The bot will load the list of pages that transclude Template:Main
 * The bot will load each such page, and look at each instance of transclusions of Template:Main
 * For each such transclusion, the bot will check the target page specified
 * If the target page does not exist (isredlink), the bot will record the occurrance on a redlink maintenance list in its own user space
 * If the target page is a disambiguation (hasdabcat), the bot will record the occurrance on a dab maintenance page in its own user space
 * If the target page is a redirect, it will edit the referring page and modify the target specified in the instance transclusion of Template:Main to the ultimate destination.
 * The somewhere on the site you are referring-to is R2D. The concerns that it lists are not applicable to transclusions of Template:Main, because of the special nature of the template and its uses, as described in the template documentation: Template:Main/doc.  Jerry   delusional ¤ kangaroo 01:31, 16 January 2009 (UTC)
 * Template documentation does not overrule guidelines, and in any case Template:Main/doc makes no mention of redirects. Mr.Z-man 01:42, 16 January 2009 (UTC)
 * It says that main is to be used in sections that are summaries of existing articles only, and should point to the article it summarizes. It is not used for see also, related, or similar article links.  It is to be only transcluded in sections that are direct summaries of existing articles, such as where a section was forked per SIZE. In this case an intermediate redirect is not only not helpful, but quite wrong. The other special nature of the template is that is is a non-printable class, so the common practice of creating a redirect with a printable title for articles with titles that are unsuitable for printing and linking there instead of directly is not needed.  Thus the concerns of the guideline are simply not applicable to the edits this proposed bot will make if approved.  Jerry   delusional ¤ kangaroo 02:03, 16 January 2009 (UTC)

Redirect has two main arguments for not bypassing redirects:
 * Reasons not to change redirects include:
 * Redirects can indicate possible future articles.
 * This is extremely unlikely in this case as the idea of the 'main' template is to point to main subject articles, not nonexistent ones. It may be confusing for readers to see 'Main article: Foo' and end up at 'Foobar'.
 * Introducing unnecessary invisible text makes the article more difficult to read in page source form.
 * Irrelevant as (I assume) the bot would replace redirect with target not redirect .

Both arguments are not really relevant here, and having the actual target in the template would make the page clearer to readers. If people feel strongly about not having the redirects bypassed, could the bot log them as it would do other issues for humans to look at later?  Richard 0612 17:29, 16 January 2009 (UTC)


 * It is actually not possible to pipe an alternate article title using Template:Main, because it uses the pipe character to separate multiple articles, eg:, not  .  Jerry   delusional ¤ kangaroo 05:03, 17 January 2009 (UTC)

Jerry: Why don't you go ahead and make twenty edits that people can examine and then evaluate? That may make matters clearer for everyone involved. There seems to be too much confusion at the moment. I think examples would help. --MZMcBride (talk) 18:21, 16 January 2009 (UTC)
 * OK, I will do that.  Jerry  delusional ¤ kangaroo 00:52, 17 January 2009 (UTC)
 * Done. Please see: User:JerryBot/Logs/TemplateMain. Thanks,  Jerry  delusional ¤ kangaroo 04:57, 17 January 2009 (UTC)
 * Seeing as this bot has already had an 'unofficial' trial (which from a technical standpoint seemed to go well), and there has been no further discussion about/objection to the redirect issue (and the bot doesn't really breach R2D in my view), I am tempted to approve this request. Thoughts?  Richard 0612 11:05, 3 February 2009 (UTC)

As there have been no continuing objections,  Richard 0612  23:14, 6 February 2009 (UTC)


 * The above discussion is preserved as an archive of the debate. Please do not modify it. Subsequent comments should be made in a new section.