You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: [AI] address review round 3 on cli_context auth
- machine-id: move mkdirSync inside the try/catch so a read-only $HOME /
restricted container returns "" instead of throwing (was breaking sign-in
via buildCliContext -> buildAuthorizeUrl -> authorize)
- buildCliContext: fail CLOSED when Config.get() throws (the plugin can run in
the server worker where it does) so a config-opted-out user's id is never sent
- welcome.ts: stop minting the machine-id; delegate creation to Telemetry.doInit
(which resolves env + config); keep existsSync as the upgrade probe
- buildAuthorizeUrl: accept an optional machineIdPath forwarded to
buildCliContext; encode the state param
- docs: name both opt-out mechanisms (env var AND telemetry.disabled config) and
reconcile the PostHog vs App Insights destinations
- tests: use the repo tmpdir() fixture (no $HOME writes), real wx/EEXIST race and
mkdir-EACCES branches via spyOn, config-opt-out + fail-closed cases, non-vacuous
assertions, and guard against a developer's exported ALTIMATE_TELEMETRY_DISABLED
- remove the dead getOrCreateMachineId re-export; import from util/machine-id
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
-**Logged-in users:** Your email is SHA-256 hashed before sending. We never see your raw email.
132
132
-**Anonymous users:** A random UUID (`crypto.randomUUID()`) is generated on first run and stored at `~/.altimate/machine-id`. This is NOT tied to your hardware, OS, or identity — it's purely random.
133
-
-**Both identifiers** are only sent when telemetry is enabled. Disable with`ALTIMATE_TELEMETRY_DISABLED=true`.
133
+
-**Both identifiers** are only sent when telemetry is enabled. Disable via`ALTIMATE_TELEMETRY_DISABLED=true` or the `telemetry.disabled` config option.
134
134
-**No fingerprinting:** We do not use browser fingerprinting, hardware IDs, MAC addresses, or IP-based tracking.
135
-
-**CLI auth flow:** When you sign in via `altimate auth login`, the anonymous machine ID is included in the authorization URL and associated with your account in product analytics for funnel analysis. This is suppressed when `ALTIMATE_TELEMETRY_DISABLED=true`is set — the machine ID is omitted from the URL entirely.
135
+
-**CLI auth flow:** When you sign in via `altimate auth login`, the anonymous machine ID is included in the authorization URL and associated with your account in product analytics for funnel analysis. This is suppressed when you disable telemetry — via `ALTIMATE_TELEMETRY_DISABLED=true`or the `telemetry.disabled` config option — and the machine ID is omitted from the URL entirely.
Copy file name to clipboardExpand all lines: docs/docs/reference/telemetry.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -151,7 +151,7 @@ Both identifiers are only sent when telemetry is enabled. Disable telemetry enti
151
151
152
152
### CLI Authentication Flow
153
153
154
-
When you sign in using the CLI browser auth flow (`altimate auth login`), an anonymized session identifier (the `machine-id` UUID) is included in the authorization URL and associated with your account in product analytics. This is used solely to correlate CLI install events with authenticated accounts in aggregate funnel analytics — it is never used for tracking, advertising, or cross-site identification. Respecting `ALTIMATE_TELEMETRY_DISABLED=true`suppresses this: when telemetry opt-out is set, the machine ID is omitted from the authorization URL entirely.
154
+
When you sign in using the CLI browser auth flow (`altimate auth login`), an anonymized session identifier (the `machine-id` UUID) is included in the authorization URL and associated with your account in product analytics. This is used solely to correlate CLI install events with authenticated accounts in aggregate funnel analytics — it is never used for tracking, advertising, or cross-site identification. Your telemetry opt-out suppresses this: when you disable telemetry — via `ALTIMATE_TELEMETRY_DISABLED=true`**or**the `telemetry.disabled` config option — the machine ID is omitted from the authorization URL entirely. The machine ID is associated with your account in PostHog for this funnel analysis, separate from the Azure Application Insights pipeline used for other CLI telemetry events.
0 commit comments