In src/sentry/utils/tag_normalization.py, the synonym table has:
"sentry.cordova": "sentery.javascript.cordova",
sentery is a typo. The normalized value then fails the tag.startswith("sentry.") check right below it, so normalize_sdk_tag("sentry.cordova") falls through to "other". Every other entry in the table resolves fine, and the existing tests in tests/sentry/utils/test_tag_normalization.py cover the other synonyms but not this one.
Quick repro (the module imports standalone, no Django needed):
from sentry.utils.tag_normalization import normalize_sdk_tag
normalize_sdk_tag("sentry.cordova") # returns "other", should be "sentry.javascript.cordova"
Impact: events from the legacy Cordova SDK get bucketed as "other" in sdk.name_normalized, which feeds the grouping fingerprint SDK component, SDK ingest metrics, and processing-error detection. Cordova usage ends up undercounted and "other" inflated.
Observed on master at bb47162e (2026-09-25). The fix is a one-character kind of thing (sentery -> sentry), ideally with a test pinning the cordova synonym.
In
src/sentry/utils/tag_normalization.py, the synonym table has:senteryis a typo. The normalized value then fails thetag.startswith("sentry.")check right below it, sonormalize_sdk_tag("sentry.cordova")falls through to"other". Every other entry in the table resolves fine, and the existing tests intests/sentry/utils/test_tag_normalization.pycover the other synonyms but not this one.Quick repro (the module imports standalone, no Django needed):
Impact: events from the legacy Cordova SDK get bucketed as "other" in
sdk.name_normalized, which feeds the grouping fingerprint SDK component, SDK ingest metrics, and processing-error detection. Cordova usage ends up undercounted and "other" inflated.Observed on master at
bb47162e(2026-09-25). The fix is a one-character kind of thing (sentery->sentry), ideally with a test pinning the cordova synonym.