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. “Telemetry resolved to false” is the default state of every
installation, so a wipe keyed on it would delete a consenting 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)
The user answered the notice and said yes, and nothing forces off.
OptedOut
A human said no — --telemetry false, CODEWHALE_TELEMETRY=0,
telemetry = false, or declining the notice. The only variant that
touches disk: it wipes and leaves a tombstone.
ForcedOff
Off for a reason that is not the user’s answer: no notice decision recorded, an unparseable env value, an unresolvable home, a rejected endpoint, or a bumped notice version. Touches nothing, ever. Leaves identity and buffer exactly as they were.