Open Bug 1438960 Opened 7 years ago Updated 2 years ago

Disable RecipeRunner in Firefox headless mode

Categories

(Firefox :: Normandy Client, enhancement, P3)

enhancement

Tracking

()

People

(Reporter: rhelmer, Unassigned, Mentored)

Details

Firefox has a "headless" mode that runs without a display: https://developer.mozilla.org/en-US/Firefox/Headless_mode We almost certainly never want to run studies on users in this configuration. Perhaps there should be a filter (default off) on the off chance that we do want to include these users. Or, we should just exclude them from matching entirely.
I think that being able to target headless browsers isn't useful, and it would be technically weird given the way we currently handle targeting. Specifically, things not mentioned explicitly in targeting filters can't affect the result. I don't think changing this is a good idea. I'd be happy to add "is in headless mode" to the current list of reasons that we don't run recipes. We have a method to do this based on several things already, such as policy engine and prefs, `RecipeRunner.checkPrefs` [0]. We'll likely want to change the name of that method from `checkPrefs` to something more appropriate, since it is checking two things that aren't prefs now. We'll need to figure out how to detect headless mode. Besides that, this should be fairly easy to do. This would make a good first bug for the normandy client. [0]: https://hg.mozilla.org/mozilla-central/file/928f0f09172f/browser/extensions/shield-recipe-client/lib/RecipeRunner.jsm#l137
Mentor: mcooper
Priority: -- → P3
Summary: add filter for Firefox headless mode → Disable RecipeRunner in Firefox headless mode
This method of detecting headless mode was suggested to me from folks in the #headless IRC channel when I was considering adding a check inside my study: `Cc["@mozilla.org/gfx/info;1"].getService(Ci.nsIGfxInfo).isHeadless` [0]. [0]: https://dxr.mozilla.org/mozilla-central/source/testing/marionette/doc/api/session.js.html#404
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.