chore(features): Remove organizations:device-class-synthesis feature#5816
chore(features): Remove organizations:device-class-synthesis feature#5816
organizations:device-class-synthesis feature#5816Conversation
This feature has been released for many years. Removing the feature check here so that we can remove the feature from sentry. My only concern here is that cabi path that defaulted it to false. If that might be a problem, we could always keep the variable around and just stop relying on the feature flag. Also wanted to check that this is fine to release in self-hosted.
787ab7d to
3d963b9
Compare
| is_renormalize, | ||
| remove_other: config.remove_other.unwrap_or(!is_renormalize), | ||
| emit_event_errors: !is_renormalize, | ||
| device_class_synthesis_config: false, // only supported in relay |
There was a problem hiding this comment.
This was my main concern - should we keep this in place?
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 3d963b9. Configure here.
| if config.device_class_synthesis_config { | ||
| normalize_device_class(event); | ||
| } | ||
| normalize_device_class(event); |
There was a problem hiding this comment.
cabi path now unconditionally strips client-set device.class tags
Medium Severity
The relay-cabi path previously had device_class_synthesis_config: false, meaning normalize_device_class was never called for cabi consumers. Now it runs unconditionally for all paths. The normalize_device_class function first removes any existing client-set device.class tag, then re-computes it from device context. For cabi consumers (e.g. sentry-native), this is a behavior change: client-set device.class tags will now be silently stripped, even when device context is insufficient to compute a replacement.
Additional Locations (1)
Reviewed by Cursor Bugbot for commit 3d963b9. Configure here.
Device class tagging now always runs (no longer gated behind the removed feature flag), so the snapshot output includes the new tag. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>


This feature has been released for many years. Removing the feature check here so that we can remove the feature from sentry.
My only concern here is that cabi path that defaulted it to false. If that might be a problem, we could always keep the variable around and just stop relying on the feature flag.
Also wanted to check that this is fine to release in self-hosted.