mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-09-10 18:45:53 +00:00
0f15de6a4a
Every mock-mode boot (e2e/CI managed backends, qual runs, demo containers) was sending startup/heartbeat pings describing the synthetic fixture fleet, registering as real installs in the license-server telemetry DB and dominating the VMware/Kubernetes/TrueNAS adoption aggregates (346 of 6,225 weekly-active installs matched the mock signature, incl. 120 of 227 on 6.1.0-rc.1). - internal/telemetry: route startup and heartbeat sends through sendEvent, which drops the ping while mock.IsMockEnabled() is true; checked per event so runtime mock toggles take effect immediately. Disclosed in the package doc and both PRIVACY.md copies. - scripts/telemetry_adoption_report.py: exclude historical mock-fleet rows (kubernetes_pods = 120×N with vmware_hosts = 7×N, the internal/mock fixture template) by default, report the excluded row/install counts, and add --include-mock-fleet to audit them. Versions through 6.1.0-rc.2 keep pinging the mock fleet until upgraded, so report-side filtering stays necessary. - security-privacy contract: record the mock-mode suppression boundary and the report-side mock-fleet exclusion as subsystem invariants. - Tests: Go sendEvent suppression/sending pair against an httptest endpoint; Python signature-matcher and summarize_rows exclusion coverage.