Skip to content

Conversation

@cursor
Copy link
Contributor

@cursor cursor bot commented Nov 18, 2025

Fixes AttributeError: 'NoneType' object has no attribute 'get' in find_alert_rule_action_ui_component.

The issue occurred because chained .get() calls on dictionaries would return None if a key existed with a null value, rather than the specified default empty dictionary. This PR introduces a helper to coerce None or non-mapping values to empty dictionaries at each level of nested access, and adds explicit type checks for sequences and mappings, making the lookup more robust.

New tests cover the metric_alert: null scenario and a valid Sentry App action.

Legal Boilerplate

Look, I get it. The entity doing business as "Sentry" was incorporated in the State of Delaware in 2015 as Functional Software, Inc. and is gonna need some rights from me in order to utilize my contributions in this here PR. So here's the deal: I retain all rights, title and interest in and to my contributions, and by keeping this boilerplate intact I confirm that Sentry can use, modify, copy, and redistribute my contributions, under Sentry's choice of terms.


Open in Cursor Open in Web

Co-authored-by: jenn.muengtaweepongsa <jenn.muengtaweepongsa@sentry.io>
@github-actions github-actions bot added the Scope: Backend Automatically applied to PRs that change backend components label Nov 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Scope: Backend Automatically applied to PRs that change backend components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants