Page MenuHomePhabricator

LinkedPage was linked by 127.0.0.1 from this page: ChangedPage
Closed, ResolvedPublic

Description

Screenshot of notifications of mediawiki.org user Siebrand

Observed on mediawiki.org (also see screenshot).

Extension:FixedImage was linked by 127.0.0.1 from this page: User:CWinDC/Extensions

According to [1] the page was created by user CWinDC.

Expected: The notification should have read:

Extension:FixedImage was linked by CWinDC from this page: User:CWinDC/Extensions

[1] https://www.mediawiki.org/w/index.php?title=User:CWinDC/Extensions&action=history


Version: master
Severity: minor

Attached:

Details

Reference
bz43701

Event Timeline

bzimport raised the priority of this task from to Low.Nov 22 2014, 1:25 AM
bzimport added a project: Notifications.
bzimport set Reference to bz43701.
bzimport added a subscriber: Unknown Object (MLST).
siebrand created this task.Jan 7 2013, 2:06 PM

It shouldn't read as that either really. Note that the revision is from September 2009:
(cur | prev) 18:19, 6 September 2009‎ CWinDC (Talk | contribs | block)‎ . . (33 bytes) (+33)‎ . . (Created page with '{{User:Alterego/ExtensionMatrix}}')

What we should really be showing is the User:Alterego/ExtensionMatrix revision info.

I also got this:

Groups was linked by 127.0.0.1 from this page: MediaWiki/de
17:39, 6 January 2013

Groups was linked by 127.0.0.1 from this page: Template:New opportunities/de
16:46, 6 January 2013

Actually the change was done by User:Kghbln in a template transcluded in MediaWiki/de:

https://www.mediawiki.org/w/index.php?title=Template:New_opportunities/Content/de&action=history

The other one was an edit I did from User:Qgil, also with a transcluded template involved:

Community metrics/December 2012, Groups/Proposals/Promotion, Groups/Proposals/San Francisco were linked by 127.0.0.1 from this page: Wikimedia Platform Engineering
14:19, 8 January 2013

Community metrics/December 2012, Groups/Proposals/Promotion, Groups/Proposals/San Francisco were linked by 127.0.0.1 from this page: Volunteer coordination and outreach
14:18, 8 January 2013

The edit:
https://www.mediawiki.org/w/index.php?title=Volunteer_coordination_and_outreach%2Fstatus&diff=625621&oldid=623276

bsitu wrote:

The problem is coming from transcluded pages. When new links are added to the page being transcluded, they are also added to the trascluding page. The link notification is sent for both pages, but we should only send for the page being transcluded. We are looking for solutions to fix this

(In reply to comment #2)

I also got this:
Groups was linked by 127.0.0.1 from this page: MediaWiki/de
17:39, 6 January 2013
Groups was linked by 127.0.0.1 from this page: Template:New opportunities/de
16:46, 6 January 2013
Actually the change was done by User:Kghbln in a template transcluded in
MediaWiki/de:
https://www.mediawiki.org/w/index.php?title=Template:New_opportunities/
Content/de&action=history
The other one was an edit I did from User:Qgil, also with a transcluded
template involved:
Community metrics/December 2012, Groups/Proposals/Promotion,
Groups/Proposals/San Francisco were linked by 127.0.0.1 from this page:
Wikimedia Platform Engineering
14:19, 8 January 2013
Community metrics/December 2012, Groups/Proposals/Promotion,
Groups/Proposals/San Francisco were linked by 127.0.0.1 from this page:
Volunteer coordination and outreach
14:18, 8 January 2013
The edit:
https://www.mediawiki.org/w/index.
php?title=Volunteer_coordination_and_outreach%2Fstatus&diff=625621&oldid=6232
76

Probably fixed in https://gerrit.wikimedia.org/r/#/c/42889/ but needs further review and testing.

bsitu wrote:

Should have been fixed on mediawiki.org, please re-open this ticket if issue still pops up

Sorry, it popped up. Reopening.

January 25

Browser testing, Design, QA and testing were linked by 127.0.0.1 from this page: How to contribute/nl
22:58, 25 January 2013

Browser testing, Design, QA and testing were linked by 127.0.0.1 from this page: How to contribute/es
22:58, 25 January 2013

Browser testing, Design, QA and testing were linked by 127.0.0.1 from this page: How to contribute/ko
22:58, 25 January 2013

Browser testing, Design, QA and testing were linked by 127.0.0.1 from this page: How to contribute/ca
22:57, 25 January 2013

Browser testing, Design, QA and testing were linked by 127.0.0.1 from this page: How to contribute/ja
22:56, 25 January 2013

Browser testing, Design, QA and testing were linked by 127.0.0.1 from this page: How to contribute/pl
22:55, 25 January 2013

Browser testing, Design, QA and testing were linked by 127.0.0.1 from this page: How to contribute/fi
22:53, 25 January 2013

Browser testing, QA and testing, Design were linked by 127.0.0.1 from this page: How to contribute/de
22:53, 25 January 2013

Browser testing, Design, QA and testing were linked by 127.0.0.1 from this page: How to contribute/en
22:53, 25 January 2013

Browser testing, QA and testing, Design were linked by 127.0.0.1 from this page: How to contribute/yi
22:48, 25 January 2013

Browser testing, Design, QA and testing were linked by 127.0.0.1 from this page: How to contribute/hi
22:48, 25 January 2013

Browser testing, Design, QA and testing were linked by 127.0.0.1 from this page: How to contribute/eo
22:42, 25 January 2013

bsitu wrote:

Hi Quim,

Thanks for reporting this issue!

I looked at the history of these pages, it's the not the transcluing bug that we saw before. These edits are coming from the bot: FuzzyBot, somehow it displays the IP address instead of the bot name. I will see what's causing this issue.

(In reply to comment #6)

Sorry, it popped up. Reopening.
January 25
Browser testing, Design, QA and testing were linked by 127.0.0.1 from this
page: How to contribute/nl
22:58, 25 January 2013
Browser testing, Design, QA and testing were linked by 127.0.0.1 from this
page: How to contribute/es
22:58, 25 January 2013
Browser testing, Design, QA and testing were linked by 127.0.0.1 from this
page: How to contribute/ko
22:58, 25 January 2013
Browser testing, Design, QA and testing were linked by 127.0.0.1 from this
page: How to contribute/ca
22:57, 25 January 2013
Browser testing, Design, QA and testing were linked by 127.0.0.1 from this
page: How to contribute/ja
22:56, 25 January 2013
Browser testing, Design, QA and testing were linked by 127.0.0.1 from this
page: How to contribute/pl
22:55, 25 January 2013
Browser testing, Design, QA and testing were linked by 127.0.0.1 from this
page: How to contribute/fi
22:53, 25 January 2013
Browser testing, QA and testing, Design were linked by 127.0.0.1 from this
page: How to contribute/de
22:53, 25 January 2013
Browser testing, Design, QA and testing were linked by 127.0.0.1 from this
page: How to contribute/en
22:53, 25 January 2013
Browser testing, QA and testing, Design were linked by 127.0.0.1 from this
page: How to contribute/yi
22:48, 25 January 2013
Browser testing, Design, QA and testing were linked by 127.0.0.1 from this
page: How to contribute/hi
22:48, 25 January 2013
Browser testing, Design, QA and testing were linked by 127.0.0.1 from this
page: How to contribute/eo
22:42, 25 January 2013

Just in case it's useful:

How to contribute/Presentation was linked by 127.0.0.1 from this page: How to contribute/ru
10 hours ago

How to contribute/Presentation was linked by 127.0.0.1 from this page: How to contribute/da
10 hours ago

How to contribute/Presentation was linked by 127.0.0.1 from this page: How to contribute/pl
10 hours ago

How to contribute/Presentation was linked by 127.0.0.1 from this page: How to contribute/yi
10 hours ago

How to contribute/Presentation was linked by 127.0.0.1 from this page: How to contribute/es
10 hours ago

How to contribute/Presentation was linked by 127.0.0.1 from this page: How to contribute/fr
10 hours ago

How to contribute/Presentation was linked by 127.0.0.1 from this page: How to contribute/eo
10 hours ago

How to contribute/Presentation was linked by 127.0.0.1 from this page: How to contribute/fi
10 hours ago

How to contribute/Presentation was linked by 127.0.0.1 from this page: How to contribute/hi
10 hours ago

How to contribute/Presentation was linked by 127.0.0.1 from this page: How to contribute/ko
10 hours ago

How to contribute/Presentation was linked by 127.0.0.1 from this page: How to contribute/ca
10 hours ago

How to contribute/Presentation was linked by 127.0.0.1 from this page: How to contribute/ja
10 hours ago

How to contribute/Presentation was linked by 127.0.0.1 from this page: How to contribute/nl
10 hours ago

How to contribute/Presentation was linked by 127.0.0.1 from this page: How to contribute/en
10 hours ago

How to contribute/Presentation was linked by 127.0.0.1 from this page: How to contribute/oc
10 hours ago

How to contribute/Presentation was linked by 127.0.0.1 from this page: How to contribute/de

bsitu wrote:

Thanks for posting the information! All of these pages are linked by a bot FuzzyBot, we are still investigating how this bot is running.

(In reply to comment #9)

Thanks for posting the information! All of these pages are linked by a bot
FuzzyBot, we are still investigating how this bot is running.

Oh, I can tell you that.

When a translatable page is changed, and the updated version is marked for translation, all translated pages are updated to use the new template of the translatable page. This is done through job queue jobs.

bsitu wrote:

(In reply to comment #10)

(In reply to comment #9)

Thanks for posting the information! All of these pages are linked by a bot
FuzzyBot, we are still investigating how this bot is running.

Oh, I can tell you that.
When a translatable page is changed, and the updated version is marked for
translation, all translated pages are updated to use the new template of the
translatable page. This is done through job queue jobs.

Thanks Siebrand! In this case, this sounds like a feature than a bug, we should come up with a better way to show a bot instead of server IP

bsitu wrote:

I am closing this for now since the IP 127.0.0.1(server side job queue job) is expected

(In reply to comment #12)

I am closing this for now since the IP 127.0.0.1(server side job queue job)
is expected

Err, no. Nothing should be exposing "127.0.0.1" to users ever (unless a sysadmin is in fact editing from localhost). If "FuzzyBot" is editing, then the notification should say "FuzzyBot", of course. Re-opening.

This is going to be a bit difficult to fix. The LinksUpdateAfterInsert hook doesn't provide any access to the agent, nor does the function that calls the hook, LinkUpdate::incrTableUpdate. I imagine the agent is abandoned further up the chain somewhere. The way we're retrieving the agent right now is just through the global $wgUser, which isn't reliable. I see 4 possible solutions:

  1. pass the agent all the way through the chain from the article being saved to the hook being executed (might be a pain)
  2. Figure out how to get the jobqueue to properly set $wgUser for every action it performs (probably a pain)
  3. Don't include the agent in this notification. It's not really important in this context anyway, which is why it isn't in the execution chain. Why would a user care who performed the linking?
  4. Don't include the agent in the notification if the agent is the jobqueue (127.0.0.1). This will be a bit of a pain since we'll have to create a separate notification type for this one edge case (since all the messages will need to be different).

I vote for #3.

Just change "127.0.0.1" for "an automatic bot" or whatever name you prefer and problem solved?

#1 seems ideal. #1 seems like a version of #1 with globals. Both #1 and #2 will probably end up being useful to other uses of the hook. Arguably, this is a bug in core.

I don't think it's essential to know how did the linking, but it may help create a kind of positive collaborative feel.

If #1 and #2. are too much work (for now), #4 seems like a useful compromise. It's somewhat more work than #3, but it seems the payoff would be worth it. But maybe not if it almost always ends up not having an agent.

If it's not going to be fixed, I suggest using WONTFIX, not FIXED.

Since we only have a few days left to actually fix this before the feature freeze next week, I imagine that our realistic short-term choices are probably #3 or Quim's suggestion. I like Quim's suggestion. Using "A bot linked your page X from X" seems OK to me.

For the short-term, #3 should be fine. Is it really just bots, though? "API call" is probably close enough to bot, but have you confirmed it doesn't affect direct edits?

I just checked and this bug doesn't even exist any more. It looks like we switched the messaging a while back (equiv to #3).