Wikipedia:Bots/Requests for approval/Mirror Bot


 * The following discussion is an archived debate. Please do not modify it. To request review of this BRFA, please start a new section at WT:BRFA. The result of the discussion was Symbol neutral vote.svg Request Expired.

Mirror Bot
Operator:

Automatic or Manually assisted:

Programming language(s): Perl, MediaWiki::API

Source code available: No

Function overview: Create and update WP:Mirror threads, this enables two or more users to share a discussion on their talk pages (for example), and receive the "you have new messages" banner if they wish to with a descriptive "last change" and edit summary.

Links to relevant discussions (where appropriate):

Edit period(s): Continuous.

Estimated number of pages affected: Initially maybe 4 or 5 a day. Will increase if the community uses it.

Exclusion compliant (Y/N): Yes and no.

Already has a bot flag (Y/N):

Function details:

Part the first

 * 1) Find new threads created using the template Reflect.
 * 2) Move the new thread to a unique thread page, replace Reflect with Reflection, setting display parameters according to Mirror me/Reflect me - for collapsing, colour scheme etc.
 * 3) Read the sig from the reflection and add the reflection to the authors page .. setting display parameters etc..


 * Target time, within a few seconds.

Part the second

 * 1) Monitor the threads and update their reflections (subject to bots/nobots and Mirror me/Reflect me).
 * 2) The reflection will include the id number of the last change to the thread that it was updated with, to potentially allow other agents or multiple instances of Mirror Bot to update the reflections safely.
 * 3) The reflection will include a time-stamp as the last parameter, to enable archiving to be done with a simple tweak to existing archive bots.
 * 4) The reflection will include an unspecified number of parameters designed to allow the page creator control of the reflections that appear on it.  These will be taken from either a page control template Mirror me/Reflect me or may be overridden by an editor.
 * 5) The reflection will include a parameter that represents part of the edit tot he thread to make the "last change" more useful.
 * 6) The edit summary will be something like Mirror Bot 'Reflecting Rich Farmbrough: "Grr.. another typo" ' where "Grr another typo" is the edit summary of the change to the thread.


 * Target time, within a few minutes at worst, preferably within 15 seconds.

Planned Mirror me/Reflect me functionality
On a typical user talk page the user will be able to specify for all reflections:
 * 1) maximum update frequency per thread and total (initially missed updates will be lost)
 * 2) no updates at all
 * 3) colour scheme
 * 4) always collapse
 * 5) never collapse
 * 6) collapse if older than
 * 7) collapse if longer than
 * 8) update with bot flag on/off
 * 9) update minor on/off or reflect
 * 10) maybe other cool stuff.
 * 11) Example, archiving dead threads - bringing them back if they resurrect.

Potential benefits

 * 1) No more hopping around user talk pages - or cutting and pasting!
 * 2) Multi-way discussions without lots of watching.
 * 3) Can suppress those annoying batches of "you have new messages" from typo-prone users by setting a min time of, say 5 minutes.
 * 4) Less disc space used.
 * 5) Prettier talk pages.
 * 6) Ability to move talk threads to sub pages - by urgency, topic etc, and set the watching/updating parameters appropriately.

Dis-benefits

 * 1) Less serendipity from browsing user talk pages.

Discussion
Test request for pages in my own and Mirror Bot's user space, limited to around 100 edits per day. Rich Farmbrough, 09:50, 20 September 2010 (UTC).

Rich Farmbrough, 02:45, 2 October 2010 (UTC). This is 11 "you have messages" if you are actively editing. If you had MB settings of 5 minutes per thread it would be reduced to 4, if you set the thread to passive it would be none.
 * Neat idea! Martin  (Smith609 – Talk)  16:28, 20 September 2010 (UTC)
 * Simple is good, and this proposal is not simple. Yes, split conversations (A posts on B's talk; B replies at A; A replies at B) can be confusing – that is probably why many editors have a "if you post here, I will reply here" policy. I accept that some editors would be happy working with the aid of this bot, but I oppose automated edits of this nature because it adds a layer of complexity that onlookers may not understand, and it adds noise to watchlists. Onlookers and new editors may feel that they too should mirror conversations, promoting unnecessary complexity and confusion. The suggestion at WP:Mirror threads that some conversations may occur on subpages also presents problems: reviewing editors should not need to search for subpages to see discussions that have occurred. As I understand it, user B's comment and signature would be copied to A's talk, and vice versa. I am not happy with that because, whereas it is fine to occasionally copy a signature manually, we should not endorse the practice as generally a good idea because a signature from A should mean "A posted this comment here, just as you are reading it". In tricky cases (for example, if investigating whether an editor has breached some guideline), a reviewing editor would have to study two talk pages because one cannot be sure that two mirrored discussions are in fact identical. Finally, if A posts a mirrored section at B, what is B supposed to do? If B has opted in to this system, they may happily respond. Otherwise, B now has to wonder what  means, and what they should do. Johnuniq (talk) 04:10, 2 October 2010 (UTC)
 * You raise a bunch of points, that illustrate my explanation was obviously lacking.
 * "a layer of complexity" - well in a way - but no more complex than navboxes
 * "it adds noise to watchlists" - yes if you watch every page you edit, and have the "noisiest" Mirror Bot settings. For the average user, using this solely on user talk pages with modest settings, they will get less watchlist noise, and about the same or less "you have messages". For example my good friend Dr Blofeld of Smersh (or is it Spectre?) was active on my talk page:
 * 1) (cur | prev) 14:13, 14 September 2010 Dr. Blofeld (talk | contribs | block) (43,118 bytes) (→Counties of China) (undo)
 * 2) (cur | prev) 14:13, 14 September 2010 Dr. Blofeld (talk | contribs | block) (43,003 bytes) (→Counties of China) (undo)
 * 3) (cur | prev) 14:08, 14 September 2010 Dr. Blofeld (talk | contribs | block) (42,587 bytes) (→Counties of China) (undo)
 * 4) (cur | prev) 13:54, 14 September 2010 Dr. Blofeld (talk | contribs | block) (41,863 bytes) (→Counties of China) (undo)
 * 5) (cur | prev) 13:53, 14 September 2010 Dr. Blofeld (talk | contribs | block) (41,751 bytes) (→Counties of China) (undo)
 * 6) (cur | prev) 13:52, 14 September 2010 Dr. Blofeld (talk | contribs | block) (41,729 bytes) (→Counties of China) (undo)
 * 7) (cur | prev) 13:41, 14 September 2010 Dr. Blofeld (talk | contribs | block) (40,945 bytes) (→Counties of China) (undo)
 * 8) (cur | prev) 13:41, 14 September 2010 Dr. Blofeld (talk | contribs | block) (40,945 bytes) (→Counties of China) (undo)
 * 9) (cur | prev) 13:41, 14 September 2010 Dr. Blofeld (talk | contribs | block) (40,938 bytes) (→Counties of China) (undo)
 * 10) (cur | prev) 12:49, 14 September 2010 Dr. Blofeld (talk | contribs | block) (40,465 bytes) (→Counties of China) (undo)
 * 11) (cur | prev) 12:48, 14 September 2010 Dr. Blofeld (talk | contribs | block) (40,362 bytes) (→Counties of China) (undo)
 * "As I understand it, user B's comment and signature would be copied to A's talk, and vice versa." No, they are reflected by page transclusion, the only thing that gets copied (essentially) is the edit summary. Some of the content could be copied as part of a dummy parameter to make diffs more informative.
 * If someone gets a mirror thread on their page it essentially looks like this (prettier, because the template is still being developed)...

Test example, feel free to edit and transclude on your talk pages
The user can edit the thread easily enough - maybe I wouldn't dump a mirror thread on a newbie, but it is really fairly straightforward. Incidentally there was a spate of using this type of transclusion many moons ago, the reason it stopped was lack of "you have messages" - talkback templates rather replaced them, but they have their own problems.
 * Sub pages - I am lost to what you mean by "reviewing editors should not need to search for subpages to see discussions that have occurred" - if you mean that all my discussions (for example) should occur on my talk page, then I understand, but you are forgetting that a good percentage of my discussions take place on other talk pages. (I happen to have some figures here: from the 6th of September to about 1 October - 237 edits to my talk page, 173 to other user talk pages, 327 on article talk pages, 177 on WP talk pages and 120 on template talk pages - which excludes conversations on WP pages like AfD, Village Pump etc - so you are seeing less than a quarter of my "discussions" on my talk page.) if you mean something else you will need to explain it a little more clearly to me. Rich Farmbrough, 14:53, 3 October 2010 (UTC).


 *  MBisanz  talk 00:36, 17 October 2010 (UTC)
 * Thank you. Rich Farmbrough, 00:25, 20 October 2010 (UTC).


 * D what is the current status of this request? ΔT The only constant 01:02, 11 November 2010 (UTC)
 * The status is i'll get back to it when I've dealt with all the nonsense. Rich Farmbrough, 03:55, 17 November 2010 (UTC).


 * How's the nonsense coming? :P - Jarry1250 [Who? Discuss.] 16:15, 12 December 2010 (UTC)
 * Well it's up and down. But more up than down I think. Rich Farmbrough, 18:13, 12 December 2010 (UTC).


 * Ready yet? Mr.Z-man 04:08, 2 January 2011 (UTC)


 * Any updates?  MBisanz  talk 10:11, 21 April 2011 (UTC)

 MBisanz  talk 03:47, 5 May 2011 (UTC) {[subst:BB}}