Status of Firefox Accounts on FirefoxOS
jparsons at mozilla.com
Sat Nov 16 17:51:18 PST 2013
- FXA FXOS continues to be committed for b2g 1.4 
- We still intend to land feature-complete on trunk by Dec 9
- You are all awesome and I overflow with appreciation for your work
I want to give an update on what we're working on, where we stand, and what our next steps are.
First, I want to thank everyone who has been working like mad for the past weeks and months to implement Firefox Accounts in FirefoxOS. What started its career as some kind of Persona sign-in on FTU evolved in October into the design and implementation of a Firefox Accounts client, account UX flows (sign-up, sign-in, etc.), and DOM and Inter-App Communcation APIs for relying parties, both certified apps and potentially third-party apps, and fully native UI and crypto. That evolution, in a completely new direction, building on the client from scratch, began approximately six weeks ago.
In that time, a fantastic group of talented people from Telefonica, Telenor, and Mozilla, have worked nearly ceaselessly towards providing this service in a beautiful, coherent, fast, secure, and elegant implementation on the device. In addition to our FirefoxOS team, the Firefox Accounts team at Mozilla have been extraordinarily generous with their time and effort to help us make this a success.
We knew from the start that producing this entire product, and getting it reviewed, and getting legal copy, and getting localization, and getting QA and testing, and integrating with our partners, all in the space of eight weeks was, to put it mildly, a bit ambitious. Because of the risk involved, the FirefoxOS product team committed us from the start to version 1.4 of FirefoxOS, with landing in 1.3 regarded a stretch goal but not a requirement.
We have two initial clients for Firefox Accounts: Where's My Fox and Marketplace. Marketplace has been on the device for a long time. Where's My Fox is targeted for 1.4.
In order to best integrate with both these partners while we continue to resolve product and UX decisions affecting all of us, I am proposing we keep to our current internal schedule , but with the following specific changes in our goals:
- We target Dec 9 as an engineering milestone
- We continue to work as scheduled
- We treat this like 1.4-beta, meaning specifically that:
- On Dec 9, we will have a working build, on trunk m-c and gaia master
- Not all features may be perfect yet (forceAuthentication, e.g.)
- TOS and PP may not yet be complete and translated into 12 languages
- For safety, we do not request uplift to 1.3
- No pref and build config is necessary; get the latest nightly, and it works
- Other small slips possible, but MVP functionality is there
- Sign-up and sign-in will be possible in FTU
- Account management in Settings
- Certified apps get signed in
- Signing out removes your auth token
- Certified apps deal with logout in their own way (WMF and Marketplace differ)
Having a working nightly build by 1.3 code-complete will still be a hell of an achievement. But hey, if we can do as much as we did in the past five or six weeks, I think we can make this.
I would like to specifically call out that I don't see the value in trying to make sign-in for Marketplace a possibility, in a "preffed-off"  form, on a shipped device at this point. My reasons are:
- Extra risk by treading on the Persona code path, with no user benefit
- Complication of Marketplace QA and testing
- Outstanding product and UX issues still need resolution:
- User fails COPPA age verification; how do existing services react?
- Logout button in Marketplace app does not make sense with Firefox Accounts
- forceAuthentication, experimental in Persona, needs a more formal treatment
- Assertions will come from a different issuer
- The account uid in the assertion offers Marketplace much more than the mere email
- Want to work with Marketplace on how to leverage this
I believe the good way forward is to work in lock-step with product on WMF and Marketplace to make a beautiful, wholesome, and integrated accounts system for 1.4. We are joined at the hip by Firefox Accounts. Our 1.4-beta engineering build, timed to coincide with 1.3 code-complete, will enable them to test thoroughly and give us feedback.
Again, many thanks to everyone who has been working so hard. We are almost there.
 I.e., both a pref for gecko and a build config for gaia. Blech.
More information about the Dev-fxacct