From 94eddb247a5c12201da506b4ff6d52f7f754e7fc Mon Sep 17 00:00:00 2001 From: jh-block Date: Thu, 5 Mar 2026 15:23:27 -0500 Subject: [PATCH] Preserve GOOSE_TELEMETRY_OFF override in set_telemetry_enabled The env-var kill switch is a hard disable. Prevent config writes from re-enabling telemetry when GOOSE_TELEMETRY_OFF is set. Co-Authored-By: Claude Opus 4.6 --- crates/goose/src/posthog.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/crates/goose/src/posthog.rs b/crates/goose/src/posthog.rs index 643c8c7a9b..1deec74faf 100644 --- a/crates/goose/src/posthog.rs +++ b/crates/goose/src/posthog.rs @@ -59,7 +59,9 @@ pub fn is_telemetry_enabled() -> bool { /// changed so that Sentry callbacks and other hot paths see the new /// state immediately. pub fn set_telemetry_enabled(enabled: bool) { - TELEMETRY_ENABLED.store(enabled, Ordering::Relaxed); + // GOOSE_TELEMETRY_OFF is a hard kill switch; never allow re-enabling. + let effective = enabled && !TELEMETRY_DISABLED_BY_ENV.load(Ordering::Relaxed); + TELEMETRY_ENABLED.store(effective, Ordering::Relaxed); } // ============================================================================