Closed Bug 981842 Opened 6 years ago Closed 6 years ago

Telemetry experiments: include current-experiment details in about:support


(Firefox Health Report Graveyard :: Client: Desktop, defect)

Not set


(Not tracked)

Firefox 31


(Reporter: benjamin, Assigned: glind)




(3 files, 3 obsolete files)

Include details about the current experiment in about:support. Requires the API from bug 974009.

1.  Delivery date?
2.  Anyone use `about:support` downstream that I need to notify
3.  Is this also styling for `about:support` page to show this?
4.  QA contact?  
5.  where is the current experiment info living?  Should I poke or needinfo Georg?
6.  Tests?

Proposed deliverable:
1.  Patch for `about:support` page
2.  patch for 'Troubleshoot.jsm'
3.  Tests?
Assignee: nobody → glind
* Due date: ASAP but in more detail, we need to land any new strings to before the train leaves next Monday. The rest of the code could come after if necessary and we'll uplift to Aurora.

Don't worry about downstream consumers too much: they are pretty forgiving and we'd be adding a whole section.

I expect you won't need to do any custom styling but yes, this is about the entire thing.

Good question about QA, I don't have a QA lined up for this and I'll go do that!

Georg posted some API details in bug 974009 comment 17.

There don't appear to be any tests for about:support currently, so don't worry about tests.
okay, tomorrow or thursday is very likely.  I am likely to stink a bit on this, b/c it's my first core patch.
Matt G.

I am going to be messing with 'about:support' page and packet to put in "Telemetry Experiments" details.

1.  Will adding more data to this affect you or anyone on your team in any way?
Flags: needinfo?(mgrimes)

See above:  I am planning to add a new section between "extensions" and "important modified prefs", IF AND ONLY IF the person has been in experiments.  

1.  Is this a good plan?  Better suggestions?
2.  I plan to add another row with a "more info" link for each experiment.  Thoughts?
Flags: needinfo?(mmaslaney)
Depends on what you mean by "messing" with it. Do you have some mockups or anything we can look at? Adding cww as well.
Flags: needinfo?(mgrimes)
Cww, Matt_G:

1. "Telemetry Experiments" is landing.  (i.e., experiments deployable via addon)
2. I figure telling SUMO and UA whether an experiment is / has run (and thus might be a source of badness) is useful
3. One experiment per person at a time, but could have multiple over a history


1. new key in the payload for "experiments" 
2. New section of the `about:support` page for that data, but unclear where it should be.  See comment 5.  

(Out of scope:  totally revamping the `about:support` page, but this could happen in the future.  HINT.)
2. New section of that page, as per
Flags: needinfo?(mgrimes)
Greg, sounds good to me.
Flags: needinfo?(mmaslaney)
Attached patch 981142.v1.diff (obsolete) — Splinter Review

As usual, my ability to code is better than my ability to actually build firefox.  Ideas welcome!  (current issues are Python version stuff on OSX)
Attachment #8389940 - Flags: feedback?(benjamin)
Comment on attachment 8389940 [details] [diff] [review]

This looks good! A few comments:

* &aboutSupport.experimentsTitle; you're using these entities but they aren't included in the patch. Are you missing changes to aboutSupport.dtd?
* You removed some #ifdef MOZ_CRASHREPORTER lines... any reason why? Doesn't seem relevant.
* For the TODO no-data case, I don't think we need to do anything different; leave the section visible and empty as we do with the crash-reports table.

Fix up those things and I'll apply/test/review.
Attachment #8389940 - Flags: feedback?(benjamin)
Attached patch 981842.v2.diff (obsolete) — Splinter Review
(Challenging to test this.  Does it need tests?)
Attachment #8389940 - Attachment is obsolete: true
Attachment #8390797 - Flags: review?(benjamin)
Shouldn't do anything for us since we still don't have an API to get this data automatically.

It should help with Support if people see something weird, we can see what experiments are running.

It concerns me just a BIT because this is a somewhat user visible spot and I don't know if users react well to being told that they're being experimented on, especially since users go to about:support when things are broken.

I think we should add it, but maybe phrase/context it better.
Flags: needinfo?(mgrimes)
This does not need automated tests. Manual QA will be sufficient.
Comment on attachment 8390797 [details] [diff] [review]

Please add the translation entity for "More Information" now so we don't have to break string freeze later.

// TODO glind throw if err? (experiments is not array?)
This comment is unnecessary please remove it.

// TODO, handle the 'no data' case.
We should either fix this now or remove the comment. I don't think we need to change anything, so just remove the comment.

r=me with those changes
Attachment #8390797 - Flags: review?(benjamin) → review+
Attached patch 981842.v3.diffSplinter Review
Attachment #8390797 - Attachment is obsolete: true
Attachment #8391433 - Flags: review?(benjamin)
per @cww:

1. move experiments to 'last'
2. Change text
Attachment #8390798 - Attachment is obsolete: true
Attached file drive.about-support.js
Scratchpad drive code to show make experiments be in the about:support page.
I landed for just the strings to get them in before branch uplift. Note that I made one change: Instead of "Experimental Firefox Features" it is just "Experimental Features" because about:support is shared code and we'd have to do branding magic which isn't worth it.
Comment on attachment 8391433 [details] [diff] [review]

+      <!-- TODO: glind should this have 'moreinfo' links? -->

Remove this since we have experiment-homepage which is the more-info.

r=me (I don't need to re-review this.)
Attachment #8391433 - Flags: review?(benjamin) → review+
Target Milestone: --- → Firefox 31
Product: Firefox Health Report → Firefox Health Report Graveyard
You need to log in before you can comment on or make changes to this bug.