Skip to content

telemetry disable reports success but does not persist; telemetry status always reports enabled #2851

Closed

Description

@RasAlGhul96

On [email protected] (Windows 11, Node 24.17.0), opting out of telemetry appears to succeed but cannot be confirmed — and every signal available to the user says it did not take.

Repro

$ npx hyperframes telemetry disable
  ✓  Telemetry disabled

$ npx hyperframes telemetry status
  Status:     enabled
  Config:     C:\Users\<user>\.hyperframes\config.json
  Commands:   0
  Disable:    hyperframes telemetry disable
  Env var:    HYPERFRAMES_NO_TELEMETRY=1

$ cat ~/.hyperframes/config.json
cat: /c/Users/<user>/.hyperframes/config.json: No such file or directory

Three things go wrong together:

  1. disable prints ✓ Telemetry disabled but writes no config file — the path status itself names does not exist afterwards.
  2. status reports enabled immediately after a successful disable.
  3. status still reports enabled when run with HYPERFRAMES_NO_TELEMETRY=1 set, i.e. the documented env-var opt-out is not reflected either.

Why this matters beyond cosmetics

Every notice the CLI prints points the user at these two mechanisms, and both appear to be no-ops from the outside. The banner also states that signing in to HeyGen links collection to the user's account (email/username), so this is the control for account-linked data collection, not just anonymous counters.

Even in the benign reading — status is a display bug and the opt-out really does work — the user has no way to verify that, which for a privacy control is most of the value.

Suggested fixes

  • Make disable actually persist (create ~/.hyperframes/config.json, or say where it really writes).
  • Make status read the same source disable writes, and reflect HYPERFRAMES_NO_TELEMETRY in the reported status rather than only listing it as a hint.
  • If Commands: 0 is meant to indicate nothing was sent, label it clearly — it currently reads as a counter rather than as confirmation.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions