pub enum TelemetryDecision {
Enabled(TelemetryConsent),
OptedOut,
ForcedOff,
}Expand description
The outcome of the emit predicate.
The split between Self::OptedOut and Self::ForcedOff is load-bearing,
not cosmetic. A run-scoped kill switch also resolves telemetry to false, so
a wipe keyed on that value would delete a user’s identity and unflushed
buffer every time they ran one codewhale exec with a
transient CODEWHALE_TELEMETRY=0 — the recipe the runtime docs themselves
prescribe.
Variants§
Enabled(TelemetryConsent)
Anonymous usage counting is enabled and nothing forces it off.
OptedOut
A human persistently said no — telemetry = false in durable config or
declining the notice. The only variant that touches disk: it wipes
and leaves a tombstone. CLI and environment false values are run-scoped
kill switches and produce Self::ForcedOff instead.
ForcedOff
Off for a run-scoped or environmental reason: an unparseable env value, an unresolvable home, or a rejected endpoint. Touches nothing, ever. Leaves identity and buffer exactly as they were.