Closed ddragana closed 4 years ago
The heuristics are ran but no action is taken. The data returned is used for telemetry sends if the user has either an Enterprise policy in place or already has a user value stored in network.trr.mode
.
Thoughts, @nhi-nguyen ?
I think it's ok to run the heuristics for those users for telemetry purpose, if we're not actually changing any prefs for them.
Closing for now.
@ddragana Feel free to open this again as needed!
You are also running this heuristics without checking if you have connectivity or not, the telemetry is a bit useless because it is not reliable. [Note: I do not know if the telemetry probe has any info about network change events or captive portal, it should have, also if an event happens during the measurements. Only with this info we can analyze data in the way that we do know what the conditions were. This should be added fro future versions]
@ddragana Very good point.
Spoke to @nhnt11 about this issue and came to this conclusion – but will still account for this in future versions: If we don't have network, we'd be running heuristics without a connection, but the add on will re-run heuristics when the network changes.
Does the telemetry for the heuristics results that happen when there's no network eventually get sent? If it does, it's a problem, because heuristics results are likely wrong and will negatively affect the study data.
I suggest that we review telemetry pings: what is send, how, when. Someone from necko (maybe me) should do it or at least write down what is useful to have in the telemetry ping. That is related to my proposal to collect more network statistics to be able to better analyze when some heuristics are encountered, e.g. when canary domain heuristics is detected to better assess its misuse.
https://github.com/mozilla/doh-rollout/blob/ec651685125bdf566c7ffd791d09aa3703990202/src/background.js#L430
and couple of lines bellow we check for skipping heuristics: let skipHeuristicsCheck = await rollout.getSetting(DOH_SKIP_HEURISTICS_PREF, false);