Closed Bug 1618475 Opened 4 years ago Closed 4 years ago

Create targeting attributes for filtering onboarding cards in Fx China repack

Categories

(Firefox :: Messaging System, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
Firefox 75
Tracking Status
firefox75 --- fixed

People

(Reporter: hectorz, Assigned: hectorz)

Details

Attachments

(1 file, 1 obsolete file)

As mentioned in bug 1597888, vanilla about:welcome is used in Fx China repack as firstrun page. In addition to overriding the default topsites, we're also hardcoding trailhead.firstrun.branches as join-privacy 1 in an attempt to minimize any mentions of Lockwise/Monitor/Pocket/Send etc. which rely on global FxA stack for authentication, while our users use the alternative FxA/Sync services hosted by Beijing office.

The join firstrun model was changed to point to China FxA by setting browser.newtabpage.activity-stream.fxaccounts.endpoint 2, and I just realized the privacy triplets are no longer supported, and it might cause the second stage to outright disappear.

I'd like to propose another targetting attribute be created, either based on distribution.id (which kinda feels like a UA detection) or browser.newtabpage.activity-stream.fxaccounts.endpoint (which feels more like a feature detection), and filter the onboarding cards with them (those not enabled for dynamic skipped):

  • data sync: should be either excluded or updated to use browser.newtabpage.activity-stream.fxaccounts.endpoint
  • firefox monitor: should be excluded before we figure out how it would work with alternative FxA
  • browse privately: kept as is
  • mobile phone: kept as is, see bug 1264843 & bug 1415544 for our tweak to mozilla.org
  • send tab: kept as is
  • lockwise strong passwords: kept as is, we hide lockwise mobile download badges in about:logins with our extension, and we're working on adding China FxA support to Lockwise on Android 3

I can work on the patch if you're okay with the above plan in general, thanks!

Depends on how easy it is to tweak/apply patches on top of m-c but my suggestion would be to:

  1. Create a new extended_triplets message MY_CUSTOM_TRIPLETS with a different trigger id showOnboarding-custom-${Services.locale.appLocaleAsBCP47}.
  2. Re-add the messages you want to show to ONBOARDING_MESSAGES but with the updated trigger.
  3. Possibly tweak the targeting if needed or just keep it to true.
    (maybe 4). Remove EXTENDED_TRIPLETS_1 to ensure no overlap.
Flags: needinfo?(khudson)
Attached file distribution.ini (obsolete) —

(In reply to Andrei Oprea [:andreio] from comment #1)

Depends on how easy it is to tweak/apply patches on top of m-c but my suggestion would be to:

  1. Create a new extended_triplets message MY_CUSTOM_TRIPLETS with a different trigger id showOnboarding-custom-${Services.locale.appLocaleAsBCP47}.
  2. Re-add the messages you want to show to ONBOARDING_MESSAGES but with the updated trigger.
  3. Possibly tweak the targeting if needed or just keep it to true.
    (maybe 4). Remove EXTENDED_TRIPLETS_1 to ensure no overlap.

Hi Andrei,

Thank you! I'm not familiar with this code but trying to understand your suggestions, it feels like you're assuming we ship a recompiled Fx with some patches applied?

To clarify, Beijing office ships a repack of desktop Fx, with bundled distribution.ini, extensions & searchplugins like 1. Almost all China repack users are using zh-CN based ones, but there're users with vanilla zh-CN Fx, and they should see the original onboarding messages, not those customized by Beijing office.

I've create a minimal patch (w/o necessary changes to docs or tests) at 2 to make my proposal more clear. The additional filtering will be enabled with the attached distribution.ini. I've tested the try build locally and it works as expected.

With the skyline release, my initial plan was to assign three existing onboarding cards to another static triplet named mozillaonline, just like multidevice, payoff, privacy & supercharge, and set trailhead.firstrun.branches to join-mozillaonline. I never took the time to create that patch.

With your transition to dynamic triplets, I think it might be better to annotate each card with filters based on alternative FxA services etc. to make it more generic.

I also noticed there's work to create a simplified about:welcome and I don't know its impact on my proposal here yet.

Flags: needinfo?(andrei.br92)

Hey hector, I think adding some targeting to cards around based on either your repack build ID or the fxa endpoint seem like reasonable approaches – I think I would almost slightly prefer based on build ID if the targeting param were called isChinaRepack or something like that, just to make the reason more obvious when reading the targeting expression.

We are currently working on a simplified onboarding experience that will be released as an experiment in 75, which will improve performance and allow us to try further experiments more easily. It may impact your proposal in the implementation details of getting the Firefox accounts endpoint may change, although the basic mechanisms of targeting will stay the same.

Flags: needinfo?(khudson)
Assignee: nobody → bzhao
Status: NEW → ASSIGNED
Attachment #9130745 - Attachment is obsolete: true

(In reply to Kate Hudson :k88hudson from comment #3)

Hey hector, I think adding some targeting to cards around based on either your repack build ID or the fxa endpoint seem like reasonable approaches – I think I would almost slightly prefer based on build ID if the targeting param were called isChinaRepack or something like that, just to make the reason more obvious when reading the targeting expression.

Hi Kate, thanks for the suggestion! I’ve updated my patch accordingly and submitted it for review. I didn’t see the targeting attributes ordered in any obvious way, so I just added the new one at the end.

We are currently working on a simplified onboarding experience that will be released as an experiment in 75, which will improve performance and allow us to try further experiments more easily. It may impact your proposal in the implementation details of getting the Firefox accounts endpoint may change, although the basic mechanisms of targeting will stay the same.

Okay, I’ll take a closer look later.

Attachment #9131469 - Attachment description: Bug 1618475 - Create targeting attributes for filtering onboarding cards in Fx China repack. r?k88hudson → Bug 1618475 - Create targeting attributes for filtering onboarding cards in Fx China repack. r=k88hudson
Pushed by cbrindusan@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/773bef4ecd9a
Create targeting attributes for filtering onboarding cards in Fx China repack. r=k88hudson
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 75

Clearing ni?anderio

Flags: needinfo?(andrei.br92)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: