Offer snippet content on Account Verified page displayed via iframe

RESOLVED WONTFIX

Status

()

defect
RESOLVED WONTFIX
5 years ago
2 years ago

People

(Reporter: Habber, Unassigned)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

()

We would like to display snippet content on the Account Verified page within an iframe. 

Displaying snippet content within an iframe would allow for more flexible snippet content, such as Mozilla.org's 'Send to device...' form. (Example wireframe - visual designs and form states are forthcoming http://cl.ly/image/1s0r2p1P2R44) 

A key use for this request is for the Firefox 38 /firstrun flow where we are promoting signing into Sync, which is valuable when the user also has Sync on another device. 

The webprod team can provide code for this iframe as the 'Send to device...' module is being developed for other pages across Mozilla.org. Webprod, Growth, and Accounts teams will need to discuss and collaborate on the following:
- Ensure iframe can handle conditional content such as when a user views Account Verified page from iOS or Android. In this case we would serve up the respective app store links in place of the 'send to device...' form. 
- Possibilities for tracking activity within iframe
- Whether this snippet must be applied globally or can be displayed based on a parameter from link in accts verified email (previous step) and only displayed to users accessing from Fx38 /firstrun flow
Blocks: 1120706
> The webprod team can provide code for this iframe as the 'Send to device...' module is being developed for other pages across Mozilla.org. Webprod, Growth, and Accounts teams will need to discuss and collaborate on the following:

We need the visual design of the snippet to be consistent or at least harmonious with the enclosing page.
Blocks: 1150222
No longer blocks: 1120706
Fx 38.1 is released on June 12th. The nearest FxA release before that date is coincidentally train 38.

Working the schedule in reverse:
Fx 38.1 release: June 12th
FxA train 38 release: Week of June 1st
FxA train 38 train -> stage: May 25th
FxA train 38 string freeze: May 15th

We need the strings to be merged into our repo no later than May 15th. We can either release the snippet to the world on June 1st or have the snippet sit dormant in code and flip it on on June 12th.

The designs should get the go-ahead from Ryan Feeley to ensure consistency.
Flags: needinfo?(rfeeley)
(In reply to Shane Tomlinson [:stomlinson] from comment #2)
> Fx 38.1 is released on June 12th. The nearest FxA release before that date
> is coincidentally train 38.
> 
> Working the schedule in reverse:
> Fx 38.1 release: June 12th
> FxA train 38 release: Week of June 1st
> FxA train 38 train -> stage: May 25th
> FxA train 38 string freeze: May 15th
> 
> We need the strings to be merged into our repo no later than May 15th. We
> can either release the snippet to the world on June 1st or have the snippet
> sit dormant in code and flip it on on June 12th.
> 
> The designs should get the go-ahead from Ryan Feeley to ensure consistency.

Would it reduce risk if we just do a static snippet for now as defined in bug 1149685? For The 38.1 release, we had the static snippet and the iframe snippet lined up for 39.0 given everything else going on. 

Also, the release for 38.1 is June 2nd and not June 12th.
Revised schedule with the info from :cmore. Instead of targeting FxA train 38, we will instead need to make train 37. The schedule is shifted forward by 2 weeks, but still gives us plenty of time. :jpetto is currently preparing an fxa-content-server PR with the snippet, :stomlinson will review and ensure the snippet is not displayed before June 2nd.

Working the schedule in reverse for the latest possible dates:
Fx 38.1 release: June 2th
FxA train 37 release: Week of May 18th
FxA train 37 train -> stage: May 11th
FxA train 37 string freeze: May 6th
(note: clearing ni? :rfeeley because it doesn't look like we have any concrete questions remaining for him at this time; please re-tag with more details if he's still needed)

AFAICT the static-snippet approach is now merged and on-track for the 38 point release, albeit with a few tweaks still pending.  Thanks :jpetto and :stomlinson!

Let's regroup and figure out how to move forward on the iframe-based version.  IIUC we'd like to ship that for Firefox 39, meaning on or before June 23.  But I can't tell how plausible that is from the information here and in linked bugs.

On the FxA side I believe we would need to target train 39, which will be tagged week of June 8.  That's not a lot of time given all the things we currently have in-flight.

Things that are not clear to me:

* Where and how will snippet content be hosted?  Do we need to stand up additional server infrastructure?  If so, who will be responsible for developing, deploying and maintaining it?

* What protocol will we use for loading the iframe content and managing conditional display of content?

* Who will be responsible for authoring snippet content?  How will we vet snippets for design consistency with the rest of FxA?

* Do we need to track activity in the snippet for the initial version?  If so, what's the plan for doing so?

* What are our options if we can't get this done in time for FF39?

And perhaps more broadly:

* What benefits do we expect to get by using an iframe to load this content, versus e.g. having the snippets locally in fxa-content-server and just locally choosing between them?
Flags: needinfo?(stomlinson)
Flags: needinfo?(rfeeley)
Flags: needinfo?(chrismore.bugzilla)
No longer depends on: 1142046
Duplicate of this bug: 1178504
From a short conversation with Growth team, the best case would be if fxa were able to display content from an iframe hosted by the mozilla about:home snippet server. This would enable Growth to manage a campaign from a single application and set rules around l10n, geo, and platforms.  We may need to add some entry points to pass to the snippet server, but I'd hope that management, deployment, and metrics could all be managed in the snippet server.
Yes, if we can do an iframe in the verified snippet, it opens us up to do various things from www.mozilla.org directly.
Flags: needinfo?(chrismore.bugzilla)
> the best case would be...

What's the corresponding worst acceptable case?  I.e. what's the incremental change to the experience that we absolutely have to ship for Firefox 40?

> edwin: iframe hosted by the mozilla about:home snippet server.
> chmore: it opens us up to do various things from www.mozilla.org directly.

I'm worried that we're all talking past each other here.  IIUC the about:home snippet server is https://snippets.cdn.mozilla.net and is a separate service to the content on www.mozilla.org.

Either way, I'll be delighted if we don't have to host a separate snippet server, so let's press on...

Assuming we can figure out the CSP/security stuff and successfully put an iframe on the verification page, what URL should it load?  Or if there's more than one, how should it decide what URL to load?  Do you have an existing snippet that we could try displaying and see how things behave, e.g. the "Send to device..." snipped mentioned in the original bug comment?

(I think Shane tried a bit of this already, which is what uncovered the potential issues with CSP, but I don't see the outcomes mentined in this bug so let's revisit and try to push past it.)
Flags: needinfo?(hhabstritt.bugzilla)
:habber: should we detach this from fx40 we can keep the existing static given the additional complexities to the iframe on the snippet and save this for a future iteration?
As discussed in today's Growth team meeting, this has been removed from scope from Fx40. We will revisit whether a separate is really necessary for Fx41 or Fx42.
Flags: needinfo?(stomlinson)
No longer blocks: 1150222
IIRC the conversation around this thing as moved on since I ni?'d Holly in this bug, so clearing it.
Flags: needinfo?(hhabstritt.bugzilla)
Alex says the world has moved on...
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → WONTFIX
Product: Core → Firefox
You need to log in before you can comment on or make changes to this bug.