VR/Releases/TestPilot

From MozillaWiki
< VR‎ | Releases
Jump to navigation Jump to search

Firefox Test Pilot Experiment for WebVR

This document serves as a checklist to introduce a Test Pilot experiment (browser extension) for WebVR.

Listed on the Test Pilot site will be a link to install the WebVR experiment (extension). When people install the Firefox extension, we have the ability to stress test (load test) usage of the WebVR API in release Firefox and also collect user feedback. We expect to have numerous platform bugs discovered, filed, and fixed, as well as many WebVR sites in the wild fixed/updated.

User flow

  1. Launch Firefox (release) from your desktop computer.
  2. Click the big green button to install the Test Pilot add-on from the Test Pilot web site: https://testpilot.firefox.com/.
  3. Scroll down and click on the link to the "WebVR" "experiment page" (à la https://testpilot.firefox.com/experiments/page-shot).
  4. Click the big green button to install the "WebVR Enabler" extension from the WebVR Experiment page (we already have the WebVR Plus extension, which we could re-rename and repurpose).
  5. Enjoy WebVR content! (Say goodbye to the times of having to manually update your browser or download custom builds!)

Firefox releases

Upcoming Firefox release dates are listed at RapidRelease/Calendar.

Firefox version release date code-freeze date
51 2016-01-24 (Q1, 2017) N/A (Q4, 2016)
52 2017-03-07 (Q1, 2017) 2016-11-14 (Q4, 2016)
53 2017-04-18 (Q2, 2017) 2017-01-23 (Q1, 2017)
54 2017-06-13 (Q2, 2017) 2017-03-06 (Q1, 2017)

Legend

  • code-freeze date: the date by which code must be landed into Gecko trunk (mozilla-central) in order to make it to the Firefox "Aurora" version.

Requirements

Blockers

These are essentials items that block the release. If you disagree, move the line item to the Nice-to-haves list.

Gecko

List of blocking bugs per Firefox platform tracking meta bug, bug 1305879:

Bugzilla query error

Array ( [type] => error [message] => http-bad-status [params] => Array ( [0] => 403 [1] => Forbidden ) ) 1


(These bugs are all dependent on this platform bug filed way back in July 2014, heh.)

Test Pilot experiment

  • [ ] Create a new Test Pilot Experiment Hypothesis (example)
  • [ ] Create a new Firefox WebExtension for WebVR Test Pilot “experiment”
  • [ ] Extension: enable dom.vr.enabled flag
  • [ ] Extension: enable dom.openvr.enabled flag
  • [ ] Identify and agree upon useful experiment metrics for Telemetry analytic events to capture
    • which content libraries and versions (detect to the best of our abilities; a similar thing was done by Mozilla’s Web Compat team to detect the presence and versions of old jQuery on various sites)
      • A-Frame, three.js, regl, stack.gl, Babylon.js, Primrose, WebVR Polyfill, WebVR Boilerplate, etc., to start
    • which protocol used (HTTPS vs. HTTP)
    • time in headset
    • time between request and user-initiated entering of VR
    • which user-gesture events are used to enter VR (e.g., click, touch, etc.)
    • whether VR auto-entered (via link traversal)
    • uses Gamepad API
    • uses Web Audio
    • presence of Service Worker
    • presence of Web App Manifest
    • performance
      • User Timing
      • Resource Timing
      • Navigation Timing
      • Perf timing from VR SDKs (this bug, for example, would be helpful)
  • [ ] When extension is ready, submit experiment to Test Pilot by filing an issue with the metadata

Nice-to-haves

These are nice things to have, but they do not block the release. If you disagree, move the line item to the blockers list.

Gecko

Bugzilla query error

Array ( [type] => error [message] => http-bad-status [params] => Array ( [0] => 403 [1] => Forbidden ) ) 1


Test Pilot experiment

  • [ ] Deprecate old WebVR Plus browser extension
  • [ ] Polyfill navigator.vr (see bug 1310682)
  • [ ] Add code for entering/exiting VR from browser chrome
  • [ ] Add code for entering/exiting VR using keyboard shortcuts