Page MenuHomePhabricator

Deploy user feedback gadget
Closed, ResolvedPublic

Description

Few steps that might be needed to make this happen:

  • Work with a wiki administrator to create, manage and deploy gadget
  • Register Schema:UserFeedback on production wiki
  • Get quick design feedback
  • Ensure there aren't any privacy concerns associated with collecting data
  • Learn how to fetch data from production logs (this might work)

Event Timeline

srishakatux triaged this task as Medium priority.Jan 15 2019, 1:51 AM
srishakatux created this task.
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptJan 15 2019, 1:51 AM

Is this "on wikitech.wikimedia.org" or where will deployment(s) take place?

I think that wikitech would be the easier wiki to pilot it on. The "community" to work with there is pretty much... me and @Quiddity and a small number of others who may notice. I think we will want it on mediawiki.org as well, but that conversation feels like it will be easier with a working deployment and data to show to folks.

bd808 added a comment.Jan 15 2019, 3:51 AM

Learn how to fetch data from production logs

I can show you some code that I wrote for computing some basic stats on the ActionApi hadoop data too that may or may not end up being helpful.

srishakatux added a comment.EditedFeb 15 2019, 2:28 AM

Steps that we might need to deploy the Gadget on Wikitech:

"EventLoggingSchemas": {

"CentralAuth": 18716449 #Schema ID from https://meta.wikimedia.org/wiki/Schema:UserFeedback

}

We deployed these changes on Wikitech:

Still to be done is registering a concrete version of the UserFeedback schema in EventLogging's EventLoggingSchemas settings on Wikitech. This should probably be done in the WikimediaEvents extension lacking a better place for it. Until this is done the js code will not actually send the votes to EventLogging. (sidenote: it would be nice to have something in the gadget spec that actually takes care of this rather than requiring a PHP code deployment.)

During initial testing we discovered that the current system for tracking prior votes is flawed. It is currently setting a single globally scoped cookie. This should be changed to either scope the cookie by full path to the page that the vote relates to or append some page identifier to the cookie name.

Change 492422 had a related patch set uploaded (by SrishtiSethi; owner: srish):
[mediawiki/extensions/WikimediaEvents@master] Register UserFeedback schema

https://gerrit.wikimedia.org/r/492422

Update > Now appending page ID to the cookie key which prevents overriding votes collected on one page with another. I've updated new changes to the JS file: https://test.wikipedia.org/w/index.php?title=MediaWiki:Gadget-userfeedback.js&diff=380405&oldid=378132 and tested with them on Test wiki.

@bd808 As per our conversation, I've modified Schema:UserFeedback; it now has the page_name property, updated the patch with new revision id in extension.json and made necessary changes to MediaWiki:Gadget-userfeedback.js on Test wiki.

Change 492422 merged by jenkins-bot:
[mediawiki/extensions/WikimediaEvents@master] Register UserFeedback schema

https://gerrit.wikimedia.org/r/492422

Instructions to fetch eventlogging data are in:
https://www.mediawiki.org/wiki/User:SSethi_(WMF)/Sandbox/Eventlogging_data_access

Using the instructions listed in the Sandbox, here is what we've got from the data so far:

Pagename,Total,Yes,No
Help:Cloud_Services_Introduction,5,3,2
Help:Contents,1,1,0
Help:Create_a_Wikimedia_developer_account,4,4,0
Help:Getting_Started,2,1,1
Help:Help,1,0,1
Help:IRC,2,2,0
Help:SSH_Fingerprints/gerrit.wikimedia.org:29418,1,1,0
Help:SSH_Fingerprints/login.tools.wmflabs.org,2,2,0
Help:Terminology,1,0,1
Help:Toolforge,5,2,3
Help:Toolforge/Developing,2,1,1
Help:Toolforge/FAQ,1,0,1
Help:Toolforge/Grid,1,1,0
Help:Toolforge/How_to,2,1,1
Help:Toolforge/Kubernetes,1,1,0
Help:Toolforge/Rules,1,1,0
Help:Toolforge/Web,1,1,0

srishakatux closed this task as Resolved.Apr 11 2019, 6:42 AM
srishakatux updated the task description. (Show Details)