(In reply to Leif Oines [:loines] from comment #10)
environment.services.(fxa|sync)_configured is null (e.g. not set by the client) can we generally assume that the client does not have fxa or sync setup?
If IIUC, it should be "impossible" for these to be null, they should always be true or false. null probably means 71 or 72 builds before the new probes landed. Now 71 is in release, I believe it should be impossible for 71 builds on the release channel to have null. If that's not true, it's worth looking in to.
do you know of any cases where a client might not set the probe to
true but might actually have one or the other turned on?
I can't think of any cases except pathological cases (eg, badly damaged profiles, but not damaged enough to prevent some telemetry reporting)
- related, will a client only explicitly set the sync probe to false in the case where they have an account configured but sync turned off (in other words, if both fxa and sync are turned off then the value of
environment.services.sync_configured will be null, but if a client has an account turned on but sync turned off then value will be false)?
The patch actually takes a shortcut - it first checks if sync is configured and if that's true, it doesn't check FxA, it just assumes it must be true. FxA is only explicitly checked if sync doesn't appear to be configured.
Again, there might be edge-cases - eg, a user hitting about:config could cause both sync and fxa to be reported as configured when none of them actually are, but that should be rare. There might also be obscure "damaged profile" type scenarios here too, but they should be rare (and with the decoupled work, the UI should reflect the strangeness and allow the user to fix things up)
There should be no case when one is null and the other is a bool - they should either both be missing (ie, the 71/72 scenarios above) or both be bools)
- related, the proportion of clients with
environment.services.sync_configured= false where
environment.services.fxa_configured = true seems lower than I expected, though not so low as to be inconceivable. Are there any edge cases, e.g. where maybe the client has the browser open for less than the time it takes to setup sync, where a client should have the sync probe set to
true but it might get reported as
That should be impossible IIUC. However, I'm not at all surprised to find the number of users with FxA but without Sync to be extremely low, because the only sane way of getting into that state is via about:welcome and choosing to opt out of sync even though there's no other obvious thing of value offered by doing so.
lmk if I didn't answer what you asked!
(I'll clear thom's ni? - he can chime in if necessary)