[Experiment] The "VPN promo" message is wrongly displayed even if you are connected to "Firefox Sync" with a "Mozilla VPN" account
Categories
(Firefox :: Messaging System, defect, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox97 | --- | unaffected |
firefox98 | --- | affected |
firefox99 | --- | unaffected |
People
(Reporter: mcoman, Assigned: dmosedale)
References
(Blocks 1 open bug)
Details
[Affected versions]:
- Firefox 98.0b6 Build ID: 20220217185748
[Affected Platforms]:
- Windows 10 x64
- macOS 11.6.2
- Linux Mint 20.2 x64
[Prerequisites]:
- Have a Firefox profile with the "browser.search.region" pref set to "US" in the "about:config" page.
- Have the "user.js" file copied to your PC.
- You are connected to "Firefox Sync" with a FxA account that was used with "Mozilla VPN" in the last 30 days.
[Steps to reproduce]:
- Open the browser with the profile from prerequisites.
- Go to the recently created profile folder and paste the "user.js" from the prerequisites.
- Restart the browser.
- Open a new "Private Window" and observe the displayed elements.
[Expected result]:
- The following elements are displayed:
- "Firefox" logo;
- In-content "Search Bar";
- The "Private window: Firefox clears your search and browsing history when you close all private windows. This doesn’t make you anonymous." string.
[Actual result]:
- The "VPN promo" message is also displayed
Comment 1•3 years ago
|
||
Should be off train fix that can be handled in targeting
Updated•3 years ago
|
Assignee | ||
Comment 2•3 years ago
|
||
This is a missing targeting clause in the experiment, and something that needs to be exposed in nimbus.py in experiment, which I will be doing a pull request on shortly.
I think the targeting criteria I'm going to add will be related attachedFxAOAuthClients[.id == "e6eb0d1e856335fc"]|mapToProperty("lastAccessedDaysAgo")
, however, my wife's machine (which has VPN on it and the VPN has not been accessed in at least 30 days, though she's still subscribed) has that property set to 0. So I need to dig into some pieces related to the semantics of that property first.
Assignee | ||
Comment 3•3 years ago
|
||
As it turns out, there had been a login in Mozilla VPN yesterday when I looked at that machine, which was why it was set to 0. So
!("e6eb0d1e856335fc" in attachedFxAOAuthClients|mapToProperty("id")) ||
(attachedFxAOAuthClients[.id == "e6eb0d1e856335fc"].lastAccessedDaysAgo > 29)
is going to be part of the targeting.
Assignee | ||
Comment 4•3 years ago
|
||
As it turns out, unlike its JavaScript cousin, the JEXL ||
operator does not short-circuit. So I ended up using this for the message targeting.
"targeting": "('e6eb0d1e856335fc' in attachedFxAOAuthClients|mapToProperty('id')) ? (attachedFxAOAuthClients[.id == 'e6eb0d1e856335fc'].lastAccessedDaysAgo > 29) : true",
Assignee | ||
Comment 5•3 years ago
|
||
https://github.com/mozilla/experimenter/pull/7097 contains a patch for this so we can use it on the experimenter side, which, with luck, will be used for the release experiment. There's an integration test issue which still needs to be sorted there, however, and my local integration test setup is having some issues of its own.
Venetia and I have talked it over, and in the interest of getting the beta experiment out there sooner rather than later, we're going to switch it from "No enterprise and no VPN in the past 30 days" to "No enterprise and no VPN in the past".
Assignee | ||
Comment 6•3 years ago
|
||
As of right now, the experiment in preview is using "No enterprise and no VPN in the past", and I've updated the mana page to reflect that for the beta experiment.
Assignee | ||
Comment 7•3 years ago
•
|
||
After a long discussion with one of the VPN folks, it seems that the way we're detecting VPN use actually can't tell us whether it's been used in the last 30 days. I've talked to Venetia, and we'll be using exactly the same targeting that we've got on the beta experiment for the 98 release experiment, and updating another already-filed bug to make future sure future campaign actually do better, in particular by telling us whether that user is a VPN subscriber, and we may well want to expose this as an experiment targeting criterion as well. I'll update this bug with more details and links to the others in the coming week.
Assignee | ||
Updated•3 years ago
|
Updated•3 years ago
|
Updated•3 years ago
|
Assignee | ||
Updated•3 years ago
|
Assignee | ||
Updated•3 years ago
|
Assignee | ||
Comment 8•2 years ago
|
||
This was fixed by the change described in comment 7.
I've spun off bug 1765899 at making the code better at avoiding showing the promo to folks particularly unlikely to be interested.
Reporter | ||
Comment 9•2 years ago
|
||
Marking this issue as VERIFIED based on comment 7.
Description
•