QA/Browser Technologies/Services/Releases/BrowserID 07062012
Areas for QA Focus
[QA] Suggested additional areas of focus for QA:
- primary flows - late landing fixes related to issue #1502 add risk
- english language review - extensive copy updates occured, please verify
- 123done and new watch api
Additional areas of focus
- Verify clear, concise language across the entire UI
- Verify the removal of the requiredEmail feature: http://beta.myfavoriteshow.org
- Verify the removal in Dev as well: http://dev.myfavoriteshow.org
- We should be able to deprecate these sites after this train moves through the environments and out into Production.
- Verify changes to About, Terms of Service, Privacy pages
- Verify fixes/updates to load_gen: local install and on Stage
- Verify good usage/behavior on Windows Metro, XP/IE8, Win7/IE9, older Android devices, and iOS 5.x.
Information
- Train 31: 07-06-2012
Links
- Test Plan: https://wiki.mozilla.org/QA/BrowserID/TestPlan
- Weekly Train Wiki: https://wiki.mozilla.org/QA/BrowserID/BrowserID_Weekly_Trains_Beta
- Release Wiki: https://wiki.mozilla.org/QA/Browser_Technologies/Services/Releases/BrowserID_07062012
- Test Plan spreadsheet: https://docs.google.com/spreadsheet/ccc?key=0As8GUPwNNWMFdDR4dVh6dkg2Y1lKOHJFUFF5RWR5Rnc#gid=0
- Stage Server: https://diresworb.org
- Stage Client/RP1: http://beta.myfavoritebeer.org
- Stage Client/RP2: http://beta.myfavoritebooze.org (OBSOLETE)
- Stage Client/RP3: http://beta.myfavoriteshow.org (OBSOLETE)
- Stage Client/RP4: http://123done.org
- Stage Client/RP4: http://carrera.databits.net:9999 (requires VPN access)
- Primary 1: https://eyedee.me
- New URL list/redirect for Stage:
- diresworb.org should redirect to login.anosrep.org
- for everything except verification requests
- login.anosrep.org should replace diresworb.org
- static.login.anosrep.org should be the location all resources are served from
- verifier.login.anosrep.org should be the new verifier entry point
- diresworb.org should redirect to login.anosrep.org
http://anosrep.org should HTTP redirect to https://login.anosrep.org https://anosrep.org should HTTP redirect to https://login.anosrep.org http://diresworb.org/verify SHOULD NOT REDIRECT https://diresworb.org/verify SHOULD NOT REDIRECT For all other urls on diresworb: http://diresworb.org should HTTP redirect to https://login.anosrep.org https://diresworb.org should HTTP redirect to https://login.anosrep.org And, all static resources should serve from https://static.login.anosrep.org
- Dev Server: https://dev.diresworb.org
- Dev Client/RP1: http://dev.myfavoritebeer.org
- Dev Client/RP2: http://dev.myfavoritebooze.org (OBSOLETE)
- Dev Client/RP3: http://dev.myfavoriteshow.org (OBSOLETE)
- Primary 1: https://eyedee.me
- Current URL list/redirect for Dev:
- dev.diresworb.org will redirect to login.dev.anosrep.org
- for everything but verification redirects
- login.dev.anosrep.org will replace dev.diresworb.org
- dev.anosrep.org will redirect to login.dev.anosrep.org
- static.dev.anosrep.org will be where all resources are served from
- verifier.dev.anosrep.org will be the new verifier entry point
- dev.diresworb.org will redirect to login.dev.anosrep.org
- Production Server: https://browserid.org
- Prod Client/RP1: http://myfavoritebeer.org
- Prod Client/RP2: http://myfavoritebooze.org (OBSOLETE)
- Prod Client/RP3: http://myfavoriteshow.org (OBSOLETE)
- Primary 1: https://eyedee.me
- Primary 2: https://mockmyid.com
- Production URL list/redirect after this train goes out:
- browserid.org should redirect to login.persona.org
- for everything but verification requests
- login.persona.org should replace browserid.org
- static.login.persona.org should be the location all resources are served from
- verifier.login.persona.org should be the new verifier entry point
- browserid.org should redirect to login.persona.org
http://persona.org should HTTP redirect to https://login.persona.org https://persona.org should HTTP redirect to https://login.persona.org http://browserid.org/verify SHOULD NOT REDIRECT https://browserid.org/verify SHOULD NOT REDIRECT For all other urls on browserid: http://browserid.org should HTTP redirect to https://login.persona.org https://browserid.org should HTTP redirect to https://login.persona.org And, all static resources should serve from https://static.login.persona.org
REF for new URLs: https://github.com/mozilla/browserid/issues/1741
Deployment Ticket
- Bug 771759 - QA and deploy BrowserID train-2012.07.06 to production
OPs Ticket and ChangeWindow
- Services Maintenance/Change Window
- TBD
Hot Fixes and Other Deployments
- TBD
ChangeLog
train-2012.07.06:
* refinement of all user facing language: #1889, #1905, #1675, #1923, #1925
* requiredEmail feature removed: #1760
* A new /about page #1768
* watch() parameter - loggedInEmail renamed to loggedInUser #1805
* persona ToS / PP now displayed in dialog: #1240
* fix cases where redirection to website after verification would fail: #1860
* clean up console messages: #1518
* load_gen cleanup: #1278
* user interface improvements: #1777, #1661, #1433, #1548, #1774, #1721, #1826, #868, #1517, #1093, #1892, #1928
* updates to "key performance indicator": #1667, #1730
* test improvments: #1794, #1875, #1883
* code cleanup: #1778, #1756, #1748, #1849, #1852
* font licenses added to source tree: #1820
* load time performance improvements: #1793, #1851, #1861
* improvments to email provider API ("primary"): #1502
* security improvments - better random numbers: #1788
* Fix Persona on Windows Metro: #1867
* Fix dialog layout when rendered in a native webview on iOS: #1517
Travis/CI
- Tests pass: run locally, so no link for this train
BID Automation
See the following site: https://wiki.mozilla.org/Identity/QA#BrowserID_Automation
Versions
- Dev: https://dev.diresworb.org/ver.txt
- Now redirects to https://login.dev.anosrep.org/ver.txt
- 5f1cf94 Merge pull request #1965 from mozilla/issue_1964_ie_image_border
- Prod: https://browserid.org/ver.txt
- 1204858 bumped version
- locale svn r105976
- Stage: https://diresworb.org/ver.txt
- Now redirects to https://login.anosrep.org/ver.txt
- 396756c 0.2012.07.06.3 - bump version after merging @jrgm's fix for test regression
- locale svn r107286
- l10n: https://l10n-preview.diresworb.org/ver.txt
- 396756c 0.2012.07.06.3 - bump version after merging @jrgm's fix for test regression
- locale svn r107286
Processes
- webheads
- /usr/bin/node bin/browserid
- /usr/bin/node bin/verifier
- /usr/bin/node /opt/browserid/lib/verifier/verifier-compute.js
- /usr/bin/node /opt/browserid/lib/bcrypt-compute.js
- /usr/bin/node bin/router
- secure webheads
- /usr/bin/node bin/dbwriter
- /usr/bin/node /opt/browserid/lib/bcrypt-compute.js
- keysigners
- /usr/bin/node bin/keysigner
- /usr/bin/node /opt/browserid/lib/keysigner/keysigner-compute.js
- databases: various mysql processes
- zeus: various zeus processes
Logs
- webheads: /var/log/browserid/
- browserid.log
- browserid-metrics.json
- verifier.log
- verifier-metrics.json
- verifier-compute.log
- router.log
- secure webheads: /var/log/browserid/
- dbwriter.log
- keysigners have /var/log/browserid/
- keysigner.log
- keysigner-compute.log
- databases: n/a
- zeus: various logs
Local Install - Unit Tests
- Front-End Unit Tests: TBD
- Back-End/Headless Unit Tests: TBD
Local Install - Load Test
- Set 1 - TBD
- Term1: CREATE_TEST_USERS=2000 BROWSERID_FAKE_VERIFICATION=1 NODE_ENV=test_mysql nohup npm start
- Term2: nohup bin/load_gen -u 1/70 -m 70000 -o -s http://127.0.0.1:10002
Stage: Load Tests
- Set 1: TBD
Sample Bug and Issue
- Basic format:
- Bug XXXXXX - But title
- Link to Bugzilla: https://bugzilla.mozilla.org/
- XXXX: Git Hub issue/title
- Link to GitHub:
- Embedded format:
- bug XXXXXX - Bug title
- [BrowserID issue 1400] : Issue title
New/Updated OPs Tickets and Issues
Bugzilla: https://bugzilla.mozilla.org/
- Bug 771719 - Update registrar whois and upstream DNS to point to dynect instead of ns[1-3]mozilla.org
- Bug 755795 - New DNS & SSL certs for the BrowserID rebrand
- Bug 757705 - EV SSL cert for login.persona.org & related domains
- Bug 710338 - Upgrade browserid.org SSL cert to EV or crazypants good level
- Bug 772686 - New DNS and SSL certs are ready for BigTent
- Bug 754926 - BigTent tracking - ProxyIdP for Persona
- Bug 772281 - Re-issue the EV SSL Certificate for persona.org and add login.persona.org as a SAN
- Bug 773094 - Deploy BigTent to stage with latest code
- Bug 773103 - new redirects needed for persona.org urls
- Bug 773483 - Update pencil to reflect browserid persona change
https://github.com/mozilla/browserid/issues
- TBD
New/Updated APPs Tickets and Issues
Bugzilla: https://bugzilla.mozilla.org/
- Bug 770418 - logging output is grody in identity/LogUtils.jsm
- Bug 759452 - Persona passwords are not remembered
- Bug 773023 - Email verification sent for existing BrowserID account
New/Updated Labs Tickets and Issues
Bugzilla: https://bugzilla.mozilla.org/
- TBD
New/Updated Localization Tickets and Issues
Bugzilla: https://bugzilla.mozilla.org/
- TBD
GitHub: https://github.com/mozilla/browserid/issues
- 1960: L10n bugs in train-2012.07.06
- 1961: Fix improper strings reported by our awesome l10n dudes.
- 1962: don't use node-gettext
- 1963: debug local doesn't properly translate our strings
- 1969: Improved testing of l10n pipeline
- 1970: enable debug 'locale' in our dev env
- 1991: Localizing login.persona.org
- 2006: it-ch/db-LB not working on ephemeral deployments when defined in aws.json
- 2011: dev: if string is not localized, no string is displayed.
Resolved/Closed Bugs and Issues
Bugzilla: https:/bugzilla.mozilla.org/
- TBD
GitHub: https://github.com/mozilla/browserid/issues
- 135: Seems possible to temporarily hijack/piggyback on an account if its left open in browser
GitHub: https://github.com/mozilla/123done/issues
- TBD
Reopened or Updated
Bugzilla: https://bugzilla.mozilla.org/
- TBD
GitHub: https://github.com/mozilla/browserid/issues
- 72: Mozilla Security Review of browserid
- 796: Sign-in failure using Google Chrome Frame
- 855: Mozillians: first time sign-in dialog provides confusing copy/labels with sign-in vs. new password
- 1167: The new "requires cookies" message needs improvement.
- 1667: Orphaned dialog KPI
- 1702: Password change doesn't require password confirmation
- 1755: Improve email inboxing
- 1844: Opera 12 Freezes on Signin
- 1870: identification fails on chrome for iOS (iPad/iPhone)
- 1954: setting a timeout for provisioning of 20s
GitHub: https://github.com/mozilla/123done/issues
- TBD
Opened Bugs/Issues For This Week
Bugzilla: https://bugzilla.mozilla.org/
- TBD
GitHub: https://github.com/mozilla/browserid/issues
- 1973: cross-origin issues with fonts redux
- 1977: update browserid version in package.json
- 1978: javascript error when checking address_info for unknown secondary
- 2005: Sign In button becomes unresponsive after openig and closing a sign in dialog
- 2008: Persona sign in page zoomed in when signing in from bugzilla.mozilla.org
- 2010: Slow response when typing in the email field on FF mobile
- 2023: Confusing UI on personas.org password reset
- 2028: Email address is displayed as hint text in 'create password' field
- 2038: redirect www.persona.org to login.persona.org
- 2040: browserid metrics - referer not passed through
- 2041: load_gen: certificates must be a non-empty array exception thrown
GitHub: https://github.com/mozilla/123done/issues
- TBD
Other Open Bugs and Issues
Bugzilla: https://bugzilla.mozilla.org/
- TBD
GitHub: https://github.com/mozilla/browserid/issues
- 1964: IE8: Persona logo at bottom of /about page has border
- 1965: Remove the border from the persona logo at the bottom of the /about page
- 1966: Fix up controllers/rp_info front end tests in IE8. Only the assertion timeout check fails now.
- 1967: mobile/main site: "Take the tour or sign up" looks ugly
- 1968: Center the "take the tour or sign up" text so that it matches the text above it.
- 1971: include.js should be generated
- 1972: updating winchan to send a close command if w.close() fails
- 1974: Add Persona sign in buttons to repo
- 1975: state machine refactor
- 1976: Implement age-neutral verification
- 1979: perform rigorous validation on all API parameters, cleanup redundancy in sanitize.js and validate.js - issue #1526
- 1980: Fix exception being thrown if KPI data is disabled.
- 1981: improve validation of origin params to API calls
- 1982: IE8 does not support max-age in cookies, making the cookie check cookie a session cookie.
- 1983: eliminate redundancy in unit tests
- 1984: Emphermeral deployments include a broken myfavoritebeer
- 1985: add IdP protocol support for account provisioning flow and constrained RPs
- 1986: unit test module names need updated to match directory structure
- 1987: proposal: Confirm link should come first in verification emails
- 1988: Fix list styling on Identity Blog
- 1989: helpers.extend is dupe of _.extend
- 1990: deprecate getVerifiedEmail
- 1992: Password length is limited to 80 characters
- 1993: Internal userid should not be exposed
- 1994: Refactor domainFromEmail code
- 1995: Define what a BrowserID email is and use our own regexp to enforce them
- 1996: Fix cookie check cookie made into a session cookie in IE8
- 1997: Update the cookies disabled copy
- 1998: dev/staging: /cookies_disabled content collapsed on mobile
- 1999: dev/staging: /unsupported_dialog not showing the firefox logo
- 2000: Add the correct URL to the firefox logo.
- 2001: wsapi fails with extra parameters are not allowed: email
- 2002: [API] Need logo on IdP
- 2003: Font issue on Chrome/Windows
- 2004: Remove the extra "email" parameter sent to auth_with_assertion.
- 2007: redirect timeout is sometimes first displayed with < 5 seconds.
- 2009: Failure on Windows Phone 7: "Action: Establishing Relay Relay frame could not be found"
- 2012: remove helpers.extend
- 2013: Can't get past 'Checking with your email provider' on iOS
- 2014: list_emails loop after BigTent auth
- 2015: new regex for matching origins - issue #1981
- 2016: log bad verifier assertions
- 2017: add different callback and discourage onready()
- 2018: Consistent "this request is taking a looooong time" message when signing in using a Google Apps email address
- 2019: Minimalist implementation of support in core for Proxy IDP (a.k.a. "BigTent")
- 2020: reset password links in email expire after one click
- 2021: log reason for bad verifier assertion and increment statsd failure counter
- 2022: Use npm-seal to verify dependencies in production
- 2024: Make redirect countdown and redirect in sync
GitHub: https://github.com/mozilla/123done/issues
- TBD
GitHub: https://github.com/mozilla/browserid-bigtent/issues
- 52: Are BigTent sessions insecure?
Notes
- Note 1 (lloyd)
- We had set a target of July 4th for deployment of our Persona rebrand and a *pile* of new features. This date has been pushed to July 9th. Come monday afternoon (US pacific time) we hope to be live with new urls, new branding, and a pile of features which I'll recap on-list and we'll blog about in more detail the coming weeks.
- Next up, beta date! We have moved our target date for the beta version of Persona to August 15th. This extra couple weeks will be used to give us a fighting chance at landing a couple extremely high priority features, as well as more time for final polish, translations, and to make this thing shine.
- Note 2 (lloyd)
- We've just cut train-2012.07.06 with a target production deployment date of july 18th.
- This train, unlike its predecessor, is focused on UI refinement and stability fixes, rather than new features. We've reviewed every user facing phrase, we've fixed a mountain of UI problems and annoyances, and we continue to optimize the load performance of the service. For a full list of changes, refer to the changelog:
- Matjaz: Let's extract some strings and let the translation party commence! NOTE: there are a LOT of changes this time around, and we expect about the same quantity of changes for the next train. We'll look to you for guidance on how to get these language changes in production without loosing locales.
- Devs: Merge it up, merge it in, let the git pullin' begin - dev is open for business.