Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Blocking about:telemetry should be set separately out of DisableTelemetry? #1103

Open
qupig opened this issue May 7, 2024 · 2 comments
Open

Comments

@qupig
Copy link
Contributor

qupig commented May 7, 2024

As I mentioned in #1101 (comment), the DisableTelemetry policy currently includes blocking the about:telemetry page.

I'm not sure the original purpose or reason for this design, and if I missed anything please tell me.

Based on some of the material I've read, the primary design of this policy and related preferences is to disabling Firefox from uploading any locally collected telemetry information, but not to prevent the collection of local telemetry data or the operation of the telemetry module.

In other words, the local telemetry module is still running and some telemetry data is still stored locally. We may be able to allow users to view local telemetry information for self-examination, or to export and manually submit portions of the data.

The page about:telemetry is used for exactly this purpose, blocking it does not prevent local telemetry from working, but blocks the user's ability to view it. So it should not be included in the DisableTelemetry policy, the administrator should be able to set this availability independently.

Policies.sys.mjs#831-845

  DisableTelemetry: {
    onBeforeAddons(manager, param) {
      if (param) {
        setAndLockPref("datareporting.healthreport.uploadEnabled", false);
        setAndLockPref("datareporting.policy.dataSubmissionEnabled", false);
        setAndLockPref("toolkit.telemetry.archive.enabled", false);
        blockAboutPage(manager, "about:telemetry");
      }
    },
  },
@mkaply
Copy link
Collaborator

mkaply commented May 7, 2024

That's an interesting idea. The big question is how do I change the old policy without breaking folks that want to block the page.

Or I could do something like "if the new BlockAboutTelemetry is set to false, don't block telemetry in DisableTelemetry.

would that be too weird?

@qupig
Copy link
Contributor Author

qupig commented May 7, 2024

Maybe use a new key and mark the old one as deprecated. (still internally compatible)

The new naming also more accurately reflects the parts that are disabled, rather than being guesswork.

{
	"Telemetry": {
		"DisableDataUpload": false,
		"DisableDataArchive": false,
		"BlockTheAboutPage": false,
	}
}

For sensitive prefs such as the Telemetry, it is best not to design too many keys at the top level, which will only increase people's confusion.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants