identity
identity
¶
Anonymous identity for external analytics.
One UUID v4 per install, persisted to disk on first use. The same file
is referenced by scripts/install/install.sh so install-time beacon
events tie back to the same person across the install→first-run funnel.
No email, no name, no hardware fingerprint — just an opaque UUID.
Classes¶
Functions¶
get_or_create_anon_id
¶
Return the persisted anon ID, generating one on first call.
Idempotent across processes — if the file already exists with a non-empty value, return it; otherwise generate a fresh UUID v4 and write atomically (rename-after-write so a crashed write leaves no half-file).
Source code in src/openjarvis/analytics/identity.py
reset_anon_id
¶
Delete the persisted ID and generate a fresh one (privacy reset).
is_analytics_enabled
¶
is_analytics_enabled(cfg: AnalyticsConfig) -> bool