Developer-first error tracking and performance monitoring
This report presents the forensic synthetic code analysis of getsentry/sentry, a Python project with 44,280 GitHub stars. SynthScan v2.0 examined 3,185,536 lines of code across 17199 source files, recording 37262 pattern matches distributed across 25 syntactic categories. The overall adjusted score of 12.4 places this repository in the Low AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 37262 distinct pattern matches across 25 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/flake8_plugin.py | 123 | def _wall_clock_year_from_datetime_call(node: ast.Call) -> int | None: | CODE |
| LOW | tools/mypy_helpers/serializer_autoderive.py | 36 | def autoderive_serializer_generic(ctx: ClassDefContext) -> None: | CODE |
| LOW | tools/mypy_helpers/prevent_weaklist_additions.py | 9 | def _modules_for_override_key(data: dict[str, object], key: str, filename: str) -> frozenset[str]: | CODE |
| LOW | tools/mypy_helpers/plugin.py | 58 | def replace_transaction_atomic_sig_callback(ctx: FunctionSigContext) -> CallableType: | CODE |
| LOW | tools/mypy_helpers/plugin.py | 80 | def _modify_base_cache_version_type(ctx: MethodSigContext) -> FunctionLike: | CODE |
| LOW | tools/mypy_helpers/plugin.py | 89 | def _remove_base_cache_decr_incr(ctx: MethodContext) -> Type: | CODE |
| LOW | tools/mypy_helpers/plugin.py | 111 | def _adjust_http_request_members(ctx: ClassDefContext) -> None: | CODE |
| LOW | tools/mypy_helpers/plugin.py | 160 | def _adjust_http_response_members(ctx: ClassDefContext) -> None: | CODE |
| LOW | tools/mypy_helpers/plugin.py | 172 | def _lazy_service_wrapper_attribute(ctx: AttributeContext, *, attr: str) -> Type: | CODE |
| LOW | tools/mypy_helpers/plugin.py | 198 | def _return_type_contains_any(t: Type) -> bool: | CODE |
| LOW | tools/mypy_helpers/plugin.py | 225 | def _check_seer_rpc_handler_not_any(ctx: FunctionContext) -> Type: | CODE |
| LOW | tools/mypy_helpers/plugin.py | 264 | def _unwrap_response_instances_from_return(expected: Type) -> list[Instance]: | CODE |
| LOW | tools/mypy_helpers/plugin.py | 284 | def _dict_literal_matches_typeddict( | CODE |
| LOW | tools/mypy_helpers/plugin.py | 346 | def _narrow_response_literal_in_union(ctx: FunctionContext) -> Type: | CODE |
| LOW | tools/mypy_helpers/plugin.py | 412 | def _check_response_body_not_any(ctx: FunctionContext) -> Type: | CODE |
| LOW | tools/mypy_helpers/plugin.py | 492 | def get_function_signature_hook( | CODE |
| LOW | tools/mypy_helpers/plugin.py | 497 | def get_method_signature_hook( | CODE |
| LOW | tools/mypy_helpers/plugin.py | 516 | def get_customize_class_mro_hook( | CODE |
| LOW | config/build-chartcuterie.ts | 23 | async function modifyPackageJsonSideEffects(): Promise<string> { | CODE |
| LOW | tests/conftest.py | 98 | def setup_enforce_monotonic_transactions(request: pytest.FixtureRequest) -> Generator[None]: | CODE |
| LOW | tests/conftest.py | 106 | def audit_hybrid_cloud_writes_and_deletes(request: pytest.FixtureRequest) -> Generator[None]: | CODE |
| LOW | tests/conftest.py | 144 | def reset_sentry_isolation_scope() -> Generator[None]: | CODE |
| LOW | tests/conftest.py | 177 | def check_leaked_responses_mocks() -> Generator[None]: | CODE |
| LOW | tests/apigw/test_circuitbreaker.py | 19 | async def test_concurrency_overflow() -> None: | CODE |
| LOW | tests/apigw/test_circuitbreaker.py | 33 | async def test_slot_released_on_error() -> None: | CODE |
| LOW | tests/apigw/test_circuitbreaker.py | 44 | async def test_failure_window_overflow() -> None: | CODE |
| LOW | tests/apigw/test_circuitbreaker.py | 60 | async def test_failure_window_recovery() -> None: | CODE |
| LOW | tests/apigw/test_circuitbreaker.py | 79 | def test_manager_breaker_per_target() -> None: | CODE |
| LOW | tests/apigw/test_proxy.py | 53 | def test_proxied_headers_filtering() -> None: | CODE |
| LOW⚡ | tests/apigw/test_proxy.py | 77 | def test_proxied_headers_host_passthrough() -> None: | CODE |
| LOW⚡ | tests/apigw/test_proxy.py | 84 | def test_proxied_headers_forwarded_for_append() -> None: | CODE |
| LOW⚡ | tests/apigw/test_proxy.py | 91 | def test_proxied_cell_headers_gateway_marker() -> None: | CODE |
| LOW⚡ | tests/apigw/test_proxy.py | 98 | def test_adapt_response_headers_and_cookies() -> None: | CODE |
| LOW | tests/tools/test_bump_action.py | 57 | def test_main_upgrades_action(workflow_and_action, capsys) -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 105 | def test_invalid_get_connection_call() -> None: | CODE |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 132 | def test_invalid_transaction_atomic() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 151 | def test_ok_transaction_atomic() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 162 | def test_ok_transaction_on_commit() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 175 | def test_invalid_transaction_on_commit() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 193 | def test_invalid_transaction_set_rollback() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 208 | def test_ok_transaction_set_rollback() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 229 | def test_added_http_request_attribute(attr: str) -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 242 | def test_adjusted_drf_request_auth() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 265 | def test_csp_response_attribute() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 284 | def test_lazy_service_wrapper() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 319 | def test_base_cache_adjusted_version_type() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 339 | def test_base_cache_incr_decr_version_removed() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 359 | def test_response_any_body_unparameterized_silent() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 375 | def test_response_any_body_parameterized_errors() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 395 | def test_response_typed_body_parameterized_silent() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 414 | def test_response_cast_escape_valve() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 433 | def test_response_body_less_parameterized_silent() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 452 | def test_response_extra_key_drift_caught_by_core_mypy() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 470 | def test_response_body_less_with_any_status_kwarg() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 491 | def test_response_data_kwarg_with_any_value() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 511 | def test_response_any_body_async_view() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 531 | def test_response_typed_body_async_view_silent() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 550 | def test_response_union_dict_literal_narrows_to_typeddict_arm() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 577 | def test_response_union_dict_literal_wrong_shape_errors() -> None: | STRING |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 598 | def test_response_union_value_type_mismatch_errors() -> None: | STRING |
| 28154 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/flake8_plugin.py | 1 | CODE | |
| LOW | tools/lib.py | 1 | CODE | |
| LOW | tools/bump_version.py | 1 | CODE | |
| LOW | tools/pin_github_action.py | 1 | CODE | |
| LOW | tools/fast_editable.py | 2 | CODE | |
| LOW | tools/bump_action.py | 1 | CODE | |
| LOW | tools/lint_requirements.py | 1 | CODE | |
| LOW | tools/mypy_helpers/sort_stronger_modules.py | 1 | CODE | |
| LOW | tools/mypy_helpers/make_stub_ignores.py | 1 | CODE | |
| LOW | tools/mypy_helpers/sort_weaklist.py | 1 | CODE | |
| LOW | tools/mypy_helpers/find_easiest_modules.py | 1 | CODE | |
| LOW | tools/mypy_helpers/serializer_autoderive.py | 10 | CODE | |
| LOW | tools/mypy_helpers/make_module_ignores.py | 1 | CODE | |
| LOW | tools/mypy_helpers/mypy_without_ignores.py | 1 | CODE | |
| LOW | tools/mypy_helpers/prevent_weaklist_additions.py | 1 | CODE | |
| LOW | tools/mypy_helpers/plugin.py | 1 | CODE | |
| LOW | devenv/sync.py | 1 | CODE | |
| LOW | devenv/post_fetch.py | 1 | CODE | |
| LOW | bin/send-cell-test-event.py | 25 | CODE | |
| LOW | bin/react-to-product-owners-yml-changes.py | 2 | CODE | |
| LOW | tests/tools/test_flake8_plugin.py | 1 | CODE | |
| LOW | tests/tools/mypy_helpers/test_plugin.py | 1 | CODE | |
| LOW | …/tools/mypy_helpers/test_prevent_weaklist_additions.py | 1 | CODE | |
| LOW | tests/acceptance/test_proxy.py | 1 | CODE | |
| LOW | tests/snuba/test_metrics_layer.py | 1 | CODE | |
| LOW | tests/snuba/tasks/test_unmerge.py | 1 | CODE | |
| LOW | tests/snuba/processing_errors/eap/test_producer.py | 1 | CODE | |
| LOW | tests/snuba/models/test_group.py | 1 | CODE | |
| LOW | tests/snuba/search/test_eap_occurrences.py | 1 | CODE | |
| LOW | tests/snuba/search/test_postgres_sort_framework.py | 1 | CODE | |
| LOW | tests/snuba/sessions/test_sessions.py | 1 | CODE | |
| LOW | …ba/api/endpoints/test_organization_events_histogram.py | 1 | CODE | |
| LOW | …/snuba/api/endpoints/test_discover_key_transactions.py | 1 | CODE | |
| LOW | …/snuba/api/endpoints/test_organization_events_stats.py | 1 | CODE | |
| LOW | …snuba/api/endpoints/test_organization_stats_summary.py | 1 | CODE | |
| LOW | …a/api/endpoints/test_organization_events_timeseries.py | 1 | CODE | |
| LOW | …ba/api/endpoints/test_organization_events_stats_mep.py | 1 | CODE | |
| LOW | tests/snuba/api/endpoints/test_project_group_index.py | 1 | CODE | |
| LOW | …g/platform/services/usage/test_outcomes_integration.py | 1 | CODE | |
| LOW | tests/sentry/test_killswitches.py | 1 | CODE | |
| LOW | tests/sentry/test_devimports.py | 1 | CODE | |
| LOW | tests/sentry/test_viewer_context.py | 1 | CODE | |
| LOW | tests/sentry/test_mypy_stronglist.py | 1 | CODE | |
| LOW | tests/sentry/test_viewer_context_jwt.py | 1 | CODE | |
| LOW | tests/sentry/test_stacktraces.py | 1 | CODE | |
| LOW | tests/sentry/test_no_create_or_update_usage.py | 1 | CODE | |
| LOW | tests/sentry/test_event_preprocessors.py | 1 | CODE | |
| LOW | tests/sentry/middleware/test_security.py | 1 | CODE | |
| LOW | tests/sentry/middleware/test_suspended.py | 1 | CODE | |
| LOW | tests/sentry/middleware/test_viewer_context.py | 1 | CODE | |
| LOW | tests/sentry/middleware/test_staff.py | 1 | CODE | |
| LOW | tests/sentry/middleware/test_proxy.py | 1 | CODE | |
| LOW | tests/sentry/middleware/test_subdomain.py | 1 | CODE | |
| LOW | tests/sentry/middleware/test_customer_domain.py | 1 | CODE | |
| LOW | …s/sentry/middleware/integrations/parsers/test_slack.py | 1 | CODE | |
| LOW | …sentry/middleware/integrations/parsers/test_discord.py | 1 | CODE | |
| LOW | …ts/sentry/middleware/integrations/parsers/test_jira.py | 1 | CODE | |
| LOW | …/monitors/endpoints/test_organization_monitor_index.py | 1 | CODE | |
| LOW | …s/test_organization_monitor_schedule_sample_buckets.py | 1 | CODE | |
| LOW | …ors/endpoints/test_organization_monitor_index_count.py | 1 | CODE | |
| 3253 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tools/api_urls_to_typescript.py | 114 | # Create the full pattern by replacing the alternate group with this alternative | COMMENT |
| MEDIUM | devservices/config/relay-cell.yml | 15 | # This file is only mounted by the `cell-routing` mode, so `advertised_upstream` | COMMENT |
| MEDIUM | tests/acceptance/test_organization_monitors.py | 28 | # Create a second project so the org has multiple projects; this prevents | COMMENT |
| MEDIUM | tests/acceptance/test_performance_summary.py | 51 | # Create a transaction | COMMENT |
| MEDIUM⚡ | tests/flagpole/test_flagpole_eval.py | 90 | # Create a temporary YAML file | COMMENT |
| MEDIUM | tests/flagpole/test_flagpole_eval.py | 229 | # Create a mock segment that always matches | COMMENT |
| MEDIUM | tests/flagpole/test_flagpole_eval.py | 247 | # Create a mock segment that always matches but has 0% rollout | COMMENT |
| MEDIUM | tests/flagpole/test_flagpole_eval.py | 265 | # Create a mock segment that never matches | COMMENT |
| MEDIUM | tests/flagpole/test_flagpole_eval.py | 288 | # Create a mock segment that never matches | COMMENT |
| MEDIUM | tests/snuba/search/test_backend.py | 2063 | # Create a new event so that we get a group in this release | COMMENT |
| MEDIUM | tests/snuba/search/test_backend.py | 2110 | # Create a new event so that we get a group in this release | COMMENT |
| MEDIUM | tests/snuba/search/test_backend.py | 2138 | # Create a new event so that we get a group in release 1 | COMMENT |
| MEDIUM | tests/snuba/search/test_backend.py | 2158 | # Create a new event so that we get a group in release 2 | COMMENT |
| MEDIUM | …ts/snuba/api/endpoints/test_organization_events_mep.py | 3933 | # Create a widget in a DIFFERENT organization with discover_widget_split=None | COMMENT |
| MEDIUM | …nuba/api/endpoints/test_discover_saved_query_detail.py | 110 | # Create an explore saved query | COMMENT |
| MEDIUM | …nuba/api/endpoints/test_discover_saved_query_detail.py | 130 | # Create a discover query with reference to explore query | COMMENT |
| MEDIUM⚡ | …dpoints/test_organization_events_stats_span_indexed.py | 2073 | # Create a span at 10:05, this should not be in the result | COMMENT |
| MEDIUM⚡ | …dpoints/test_organization_events_stats_span_indexed.py | 2083 | # Create a span at 10:30, this should be in the result | COMMENT |
| MEDIUM⚡ | …dpoints/test_organization_events_stats_span_indexed.py | 2093 | # Create a span at 22:05, this should be in the result | COMMENT |
| MEDIUM | …/snuba/api/endpoints/test_organization_events_trace.py | 572 | # Create the orphan transactions | COMMENT |
| MEDIUM | …sts/snuba/api/endpoints/test_discover_saved_queries.py | 291 | # Create a second project that the no-team user will have access to via a team. | COMMENT |
| MEDIUM | tests/snuba/api/endpoints/test_organization_events.py | 6852 | # Create a second project | COMMENT |
| MEDIUM | …ba/api/endpoints/test_organization_events_stats_mep.py | 965 | # Create a widget in a DIFFERENT organization with discover_widget_split=None | COMMENT |
| MEDIUM | tests/sentry/shared_integrations/client/test_proxy.py | 48 | # Create a valid one, and an invalid one | COMMENT |
| MEDIUM | tests/sentry/middleware/test_ratelimit_middleware.py | 268 | # Create an endpoint with custom high rate limits | COMMENT |
| MEDIUM | tests/sentry/monitors/test_serializers.py | 20 | # Create a monitor environment with a non-existent environment_id | COMMENT |
| MEDIUM | tests/sentry/monitors/test_serializers.py | 117 | # Create a monitor environment with a non-existent environment_id | COMMENT |
| MEDIUM | tests/sentry/monitors/test_validators.py | 365 | # Create a mock access object | COMMENT |
| MEDIUM | tests/sentry/monitors/test_validators.py | 531 | # Create an environment first so the monitor can be muted | COMMENT |
| MEDIUM | tests/sentry/monitors/test_validators.py | 862 | # Create a monitor environment with specific next_checkin times | COMMENT |
| MEDIUM | tests/sentry/monitors/test_validators.py | 901 | # Create a monitor environment | COMMENT |
| MEDIUM | tests/sentry/monitors/test_validators.py | 1294 | # Create a disabled detector | COMMENT |
| MEDIUM | tests/sentry/monitors/test_validators.py | 1336 | # Create a disabled detector | COMMENT |
| MEDIUM | tests/sentry/monitors/test_validators.py | 1376 | # Create an enabled detector | COMMENT |
| MEDIUM | …sentry/monitors/endpoints/test_base_monitor_details.py | 349 | # Create an environment so the monitor has an environment to mute | COMMENT |
| MEDIUM | …sentry/monitors/endpoints/test_base_monitor_details.py | 362 | # Create a muted environment so the monitor is muted | COMMENT |
| MEDIUM | …sts/sentry/monitors/consumers/test_monitor_consumer.py | 298 | # Create a muted environment for this monitor | COMMENT |
| MEDIUM | …leases/endpoints/test_organization_release_assemble.py | 231 | # Create an unauthorized project (attacker has no access) | COMMENT |
| MEDIUM | …leases/endpoints/test_organization_release_assemble.py | 240 | # Create a malicious artifact bundle that tries to target the unauthorized project | COMMENT |
| MEDIUM | …leases/endpoints/test_organization_release_assemble.py | 292 | # Create an artifact bundle that targets an authorized project | COMMENT |
| MEDIUM⚡ | tests/sentry/releases/endpoints/test_release_deploys.py | 452 | # Create a second project | COMMENT |
| MEDIUM⚡ | tests/sentry/releases/endpoints/test_release_deploys.py | 455 | # Create a release for both projects | COMMENT |
| MEDIUM | tests/sentry/tasks/test_post_process.py | 1544 | # Create a new event to avoid debouncing | COMMENT |
| MEDIUM | tests/sentry/tasks/test_post_process.py | 1577 | # Create a new event to avoid debouncing | COMMENT |
| MEDIUM | tests/sentry/tasks/test_web_vitals_issue_detection.py | 360 | # Create an existing issue group so that the web vital issue detection does not produce a new occurrence | COMMENT |
| MEDIUM⚡ | …sts/sentry/core/endpoints/test_organization_details.py | 1224 | # Create an org, mapping, and slug reservation. For us to reach the RPC conflict, | COMMENT |
| MEDIUM | …sts/sentry/core/endpoints/test_organization_details.py | 577 | # Create a team member for project_1 only | COMMENT |
| MEDIUM | …entry/core/endpoints/test_organization_member_index.py | 568 | # Create a user with multiple email addresses | COMMENT |
| MEDIUM | …try/core/endpoints/test_organization_member_details.py | 146 | # Create a user with multiple email addresses | COMMENT |
| MEDIUM⚡ | tests/sentry/security/test_utils.py | 18 | # Create a user. This has to be done not in the control mode. | COMMENT |
| MEDIUM⚡ | tests/sentry/security/test_utils.py | 22 | # Create an organization. This has to be done not in the control mode. | COMMENT |
| MEDIUM⚡ | tests/sentry/security/test_utils.py | 27 | # Create a Sentry App using the creator. This needs to be run in control mode. | COMMENT |
| MEDIUM | tests/sentry/auth/test_helper.py | 653 | # Create the user whose email the IdP asserted | COMMENT |
| MEDIUM | …sentry/web/frontend/test_organization_auth_settings.py | 320 | # Create an unlinked member | COMMENT |
| MEDIUM | …ts/sentry/web/frontend/test_auth_organization_login.py | 1350 | # Create an organization with SSO (not the demo org) | COMMENT |
| MEDIUM⚡ | tests/sentry/web/frontend/test_oauth_token.py | 1693 | # Create a public client (no client_secret) | COMMENT |
| MEDIUM⚡ | tests/sentry/web/frontend/test_oauth_token.py | 1700 | # Create a token for the public client | COMMENT |
| MEDIUM | tests/sentry/web/frontend/test_oauth_token.py | 1155 | # Create a public client (no client_secret) | COMMENT |
| MEDIUM | tests/sentry/web/frontend/test_oauth_token.py | 1553 | # Create a public application (no client_secret) | COMMENT |
| MEDIUM | tests/sentry/web/frontend/test_oauth_token.py | 1626 | # Create a public application (no client_secret) | COMMENT |
| 373 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/mypy_helpers/plugin.py | 305 | except Exception: | CODE |
| LOW | tests/tools/test_flake8_plugin.py | 175 | except Exception: | CODE |
| LOW | tests/tools/test_flake8_plugin.py | 180 | except Exception: | CODE |
| LOW | tests/acceptance/conftest.py | 47 | except Exception: | STRING |
| LOW | tests/sentry/test_devimports.py | 93 | except Exception: | CODE |
| LOW | tests/sentry/monitors/test_utils.py | 208 | except Exception: | CODE |
| LOW | tests/sentry/tasks/test_relay.py | 358 | except Exception: | CODE |
| LOW | tests/sentry/web/frontend/generic/test_static_media.py | 86 | except Exception: | CODE |
| LOW | tests/sentry/web/frontend/generic/test_static_media.py | 111 | except Exception: | CODE |
| LOW | tests/sentry/web/frontend/generic/test_static_media.py | 157 | except Exception: | CODE |
| MEDIUM | tests/sentry/utils/test_local_cache.py | 208 | def reader() -> None: | CODE |
| LOW | tests/sentry/utils/test_local_cache.py | 214 | except Exception as e: # noqa: BLE001 - surface any threading error to the assertion | CODE |
| LOW | tests/sentry/taskworker/test_config.py | 111 | except Exception: | CODE |
| LOW | …rod/vcs/status_checks/size/test_status_checks_tasks.py | 621 | except Exception as e: | CODE |
| LOW | …rod/vcs/status_checks/size/test_status_checks_tasks.py | 728 | except Exception as e: | CODE |
| LOW | …rod/vcs/status_checks/size/test_status_checks_tasks.py | 783 | except Exception as e: | CODE |
| LOW | …tions/gitlab/tasks/test_update_all_project_webhooks.py | 360 | except Exception: | CODE |
| LOW | …try/integrations/github_enterprise/test_integration.py | 590 | except Exception: | CODE |
| LOW | tests/sentry/integrations/github/test_integration.py | 1343 | except Exception: | CODE |
| LOW | …try/sentry_apps/services/legacy_webhook/test_client.py | 70 | except Exception: | CODE |
| MEDIUM | tests/sentry/seer/autofix/test_issue_summary.py | 247 | def target(req_id): | CODE |
| LOW | tests/sentry/seer/autofix/test_issue_summary.py | 251 | except Exception as e: | CODE |
| LOW | tests/sentry/hybridcloud/models/test_outbox.py | 367 | except Exception as e: | CODE |
| LOW | tests/sentry/relocation/test_utils.py | 333 | except Exception: | CODE |
| LOW | tests/sentry/relocation/test_utils.py | 371 | except Exception: | CODE |
| LOW⚡ | tests/sentry/api/test_utils.py | 122 | except Exception as e: | CODE |
| LOW⚡ | tests/sentry/api/test_utils.py | 203 | except Exception as e: | CODE |
| LOW⚡ | tests/sentry/api/test_utils.py | 214 | except Exception as e: | CODE |
| LOW⚡ | tests/sentry/api/test_utils.py | 228 | except Exception as e: | CODE |
| LOW⚡ | tests/sentry/api/test_utils.py | 239 | except Exception as e: | CODE |
| LOW⚡ | tests/sentry/api/test_utils.py | 254 | except Exception as e: | CODE |
| LOW | tests/sentry/digests/backends/test_redis.py | 73 | except Exception: | CODE |
| LOW | tests/sentry/digests/backends/test_redis.py | 107 | except Exception: | CODE |
| LOW | .github/workflows/scripts/bootstrap-snuba.py | 47 | except Exception: | CODE |
| LOW | .github/workflows/scripts/bootstrap-snuba.py | 104 | except Exception as e: | CODE |
| LOW | …orkflows/scripts/test_calculate_backend_test_shards.py | 487 | except Exception as exc: | CODE |
| MEDIUM | …hub/workflows/scripts/compute-sentry-selected-tests.py | 244 | print(f"Error: Coverage database not found: {coverage_db}", file=sys.stderr) | CODE |
| MEDIUM | …hub/workflows/scripts/compute-sentry-selected-tests.py | 277 | print(f"Error querying coverage database: {e}", file=sys.stderr) | CODE |
| LOW | src/apigw/dsl.py | 35 | except Exception: | CODE |
| LOW | src/apigw/dsl.py | 47 | except Exception: | CODE |
| LOW | src/flagpole/flagpole_eval.py | 35 | except Exception as e: | CODE |
| LOW | src/flagpole/flagpole_eval.py | 46 | except Exception as e: | CODE |
| LOW | src/flagpole/evaluation_context.py | 143 | except Exception as e: | CODE |
| LOW | src/flagpole/__init__.py | 181 | except Exception as exc: | CODE |
| LOW | src/social_auth/fields.py | 36 | except Exception as e: | CODE |
| LOW | src/social_auth/fields.py | 48 | except Exception as e: | CODE |
| LOW | src/social_auth/fields.py | 55 | except Exception as e: | CODE |
| LOW⚡ | src/sentry/reprocessing2.py | 627 | except Exception as e: | CODE |
| LOW | src/sentry/__init__.py | 19 | except Exception: | CODE |
| LOW | src/sentry/http.py | 211 | except Exception as exc: | CODE |
| LOW | src/sentry/viewer_context.py | 300 | except Exception: | CODE |
| LOW | src/sentry/sdk_updates.py | 108 | except Exception: | CODE |
| LOW⚡ | src/sentry/sdk_updates.py | 376 | except Exception: | CODE |
| LOW⚡ | src/sentry/sdk_updates.py | 386 | except Exception: | CODE |
| LOW | src/sentry/sdk_updates.py | 419 | except Exception: | CODE |
| LOW | src/sentry/sdk_updates.py | 431 | except Exception: | CODE |
| MEDIUM | src/sentry/sdk_updates.py | 371 | def get_sdk_versions(): | CODE |
| MEDIUM | src/sentry/sdk_updates.py | 381 | def get_sdk_urls(): | CODE |
| LOW | src/sentry/event_manager.py | 227 | except Exception: | CODE |
| LOW | src/sentry/event_manager.py | 325 | except Exception: | CODE |
| 1120 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/apigw/test_routing.py | 13 | logger = logging.getLogger(__name__) | CODE |
| LOW | tests/tools/test_flake8_plugin.py | 402 | logger = logging.getLogger(__name__) | CODE |
| LOW | tests/snuba/api/endpoints/test_organization_trace.py | 32 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ts/snuba/api/endpoints/test_organization_trace_logs.py | 10 | logger = logging.getLogger(__name__) | CODE |
| LOW | …sts/sentry/organizations/services/test_organization.py | 82 | def _set_option(self, organization: Organization, key: str, value: str) -> None: | CODE |
| LOW | tests/sentry/runner/commands/test_configoptions.py | 58 | def set_options(self) -> None: | CODE |
| LOW | …y/ingest/ingest_consumer/test_ingest_consumer_kafka.py | 28 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | tests/sentry/models/test_groupsubscription.py | 116 | def update_user_settings_always(self) -> None: | CODE |
| LOW⚡ | tests/sentry/models/test_groupsubscription.py | 126 | def update_user_setting_subscribe_only(self) -> None: | CODE |
| LOW | tests/sentry/models/test_groupsubscription.py | 144 | def update_user_setting_never(self) -> None: | CODE |
| LOW | tests/sentry/models/test_groupsubscription.py | 162 | def update_project_setting_always(self) -> None: | CODE |
| LOW | tests/sentry/models/test_groupsubscription.py | 180 | def update_project_setting_subscribe_only(self) -> None: | CODE |
| LOW | tests/sentry/models/test_groupsubscription.py | 198 | def update_project_setting_never(self) -> None: | CODE |
| LOW | tests/sentry/models/test_groupsubscription.py | 216 | def update_team_setting_subscribe_only(self, team_id: int) -> None: | CODE |
| LOW | …y/sentry_metrics/test_rh_metrics_multiprocess_steps.py | 32 | logger = logging.getLogger(__name__) | CODE |
| LOW | …/sentry_metrics/test_gen_metrics_multiprocess_steps.py | 34 | logger = logging.getLogger(__name__) | CODE |
| LOW | …/sentry_metrics/test_gen_metrics_multiprocess_steps.py | 47 | def update_sentry_settings(settings: Any) -> None: | CODE |
| LOW | tests/sentry/integrations/msteams/test_notifications.py | 183 | def _setup_msteams_api(self) -> None: | CODE |
| LOW | …points/test_sentry_app_installation_external_issues.py | 19 | def _set_up_sentry_app(self, name: str, scopes: list[str]) -> None: | CODE |
| LOW | …entry/seer/endpoints/test_group_autofix_setup_check.py | 117 | def _set_seat_based_tier_cache(self, value: bool) -> None: | CODE |
| LOW | …entry/seer/endpoints/test_group_autofix_setup_check.py | 252 | def _set_seat_based_tier_cache(self, value: bool) -> None: | CODE |
| LOW | …sentry/seer/code_review/webhooks/test_merge_request.py | 1006 | def _setup_code_review(self) -> None: | CODE |
| LOW | …e/endpoints/test_organization_deduplicate_workflows.py | 182 | def set_up_workflows(self, idx: int) -> None: | CODE |
| LOW | …/condition/test_issue_priority_deescalating_handler.py | 63 | def update_group_and_open_period(self, priority: PriorityLevel) -> None: | CODE |
| LOW | tests/sentry/rules/history/test_preview.py | 83 | def _set_up_assigned_groups(self) -> None: | CODE |
| LOW | …/api/endpoints/test_project_alert_rule_task_details.py | 34 | def set_value(self, status: str, rule_id: int | None = None) -> None: | CODE |
| LOW | tests/sentry/issues/test_occurrence_consumer.py | 42 | logger = logging.getLogger(__name__) | CODE |
| LOW | …sts/sentry/services/nodestore/bigtable/test_backend.py | 32 | def set_cell(self, family: str, col: str, value: bytes, timestamp: int) -> None: | CODE |
| LOW | src/flagpole/__init__.py | 239 | __all__ = [ | CODE |
| LOW | src/sentry/http.py | 26 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/sentry/viewer_context.py | 17 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | src/sentry/viewer_context.py | 172 | def set_viewer_context_organization(organization_id: int) -> None: | CODE |
| LOW | src/sentry/sdk_updates.py | 13 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/sentry/event_manager.py | 195 | def set_tag(data: dict[str, Any], key: str, value: Any) -> None: | CODE |
| LOW | src/sentry/event_manager.py | 692 | def _set_project_platform_if_needed(project: Project, event: Event) -> None: | CODE |
| LOW | src/sentry/event_manager.py | 2139 | def update_severity_error_count(reset=False) -> None: | CODE |
| LOW | src/sentry/shared_integrations/client/proxy.py | 41 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/sentry/shared_integrations/client/base.py | 448 | def set_cache(self, cache_key: str, result: Any, cache_time: int) -> None: | CODE |
| LOW | …/sentry/organizations/services/organization/service.py | 164 | def update_flags(self, *, organization_id: int, flags: RpcOrganizationFlagsUpdate) -> None: | CODE |
| LOW | …/sentry/organizations/services/organization/service.py | 447 | def update_membership_flags(self, *, organization_member: RpcOrganizationMember) -> None: | CODE |
| LOW | src/sentry/organizations/services/organization/impl.py | 340 | def update_flags(self, *, organization_id: int, flags: RpcOrganizationFlagsUpdate) -> None: | CODE |
| LOW | src/sentry/organizations/services/organization/impl.py | 499 | def update_membership_flags(self, *, organization_member: RpcOrganizationMember) -> None: | CODE |
| LOW | src/sentry/metrics/precise_dogstatsd.py | 8 | __all__ = ["PreciseDogStatsdMetricsBackend"] | CODE |
| LOW | src/sentry/metrics/dogstatsd.py | 9 | __all__ = ["DogStatsdMetricsBackend"] | CODE |
| LOW | src/sentry/metrics/dualwrite.py | 9 | __all__ = ["DualWriteMetricsBackend"] | CODE |
| LOW | src/sentry/metrics/sentry_sdk.py | 8 | __all__ = ["SentrySDKMetricsBackend"] | CODE |
| LOW | src/sentry/metrics/statsd.py | 1 | __all__ = ["StatsdMetricsBackend"] | CODE |
| LOW | src/sentry/metrics/dummy.py | 3 | __all__ = ["DummyMetricsBackend"] | CODE |
| LOW | src/sentry/metrics/base.py | 1 | __all__ = ["MetricsBackend"] | CODE |
| LOW | src/sentry/metrics/datadog.py | 1 | __all__ = ["DatadogMetricsBackend"] | CODE |
| LOW | src/sentry/middleware/ai_agent.py | 10 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/sentry/middleware/customer_domain.py | 20 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/sentry/middleware/demo_mode_guard.py | 13 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/sentry/middleware/devtoolbar.py | 12 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/sentry/middleware/subdomain.py | 14 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/sentry/middleware/viewer_context.py | 17 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/sentry/middleware/integrations/tasks.py | 29 | logger = logging.getLogger(__name__) | CODE |
| LOW | …/sentry/middleware/integrations/integration_control.py | 11 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/sentry/middleware/integrations/parsers/bitbucket.py | 15 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/sentry/middleware/integrations/parsers/vercel.py | 10 | logger = logging.getLogger(__name__) | CODE |
| 922 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/flake8_plugin.py | 151 | CODE | |
| LOW | tools/flake8_plugin.py | 313 | CODE | |
| LOW | tools/api_urls_to_typescript.py | 41 | CODE | |
| LOW | tools/pin_github_action.py | 40 | CODE | |
| LOW | tools/lint_requirements.py | 8 | CODE | |
| LOW | tools/mypy_helpers/check_stronglist.py | 17 | CODE | |
| LOW | tools/mypy_helpers/serializer_autoderive.py | 36 | CODE | |
| LOW | tools/mypy_helpers/plugin.py | 264 | CODE | |
| LOW | tools/mypy_helpers/plugin.py | 346 | CODE | |
| LOW | devenv/post_fetch.py | 36 | CODE | |
| LOW | bin/react-to-product-owners-yml-changes.py | 14 | CODE | |
| LOW | tests/apigw/test_routing.py | 162 | CODE | |
| LOW | tests/snuba/tasks/test_unmerge.py | 190 | CODE | |
| LOW | tests/snuba/tasks/test_unmerge.py | 505 | CODE | |
| LOW | tests/snuba/search/test_backend.py | 2537 | CODE | |
| LOW | tests/snuba/api/endpoints/test_organization_trace.py | 723 | CODE | |
| LOW | …ints/test_organization_events_heatmap_trace_metrics.py | 227 | CODE | |
| LOW | …snuba/api/endpoints/test_organization_event_details.py | 345 | CODE | |
| LOW | …snuba/api/endpoints/test_organization_event_details.py | 358 | CODE | |
| LOW | …snuba/api/endpoints/test_organization_event_details.py | 382 | CODE | |
| LOW | …ndpoints/test_organization_events_spans_performance.py | 122 | CODE | |
| LOW | tests/sentry/options/test_manager.py | 303 | CODE | |
| LOW | tests/sentry/silo/test_client.py | 115 | CODE | |
| LOW | tests/sentry/silo/test_client.py | 176 | CODE | |
| LOW | tests/sentry/silo/test_base.py | 26 | CODE | |
| LOW | tests/sentry/tasks/test_reprocessing2.py | 283 | CODE | |
| LOW | tests/sentry/tasks/test_commit_context.py | 702 | CODE | |
| LOW | tests/sentry/tasks/seer/test_context_engine_index.py | 51 | CODE | |
| LOW | tests/sentry/tasks/seer/test_context_engine_index.py | 94 | CODE | |
| LOW | …sts/sentry/core/endpoints/test_organization_details.py | 970 | CODE | |
| LOW | tests/sentry/spans/consumers/process/test_consumer.py | 21 | CODE | |
| LOW | tests/sentry/spans/consumers/process/test_consumer.py | 127 | CODE | |
| LOW | tests/sentry/spans/consumers/process/test_flusher.py | 412 | CODE | |
| LOW | tests/sentry/auth/authenticators/test_sms.py | 66 | CODE | |
| LOW | tests/sentry/grouping/test_categorization.py | 150 | CODE | |
| LOW | tests/sentry/grouping/test_enhancer.py | 32 | CODE | |
| LOW | tests/sentry/utils/kvstore/test_common.py | 26 | CODE | |
| LOW | tests/sentry/taskworker/test_timeout.py | 106 | CODE | |
| LOW | tests/sentry/taskworker/test_timeout.py | 136 | CODE | |
| LOW | tests/sentry/taskworker/test_config.py | 72 | CODE | |
| LOW | …rod/vcs/status_checks/size/test_status_checks_tasks.py | 251 | CODE | |
| LOW | …rod/vcs/status_checks/size/test_status_checks_tasks.py | 1361 | CODE | |
| LOW | …ack/endpoints/test_organization_feedback_categories.py | 79 | CODE | |
| LOW | tests/sentry/integrations/slack/test_message_builder.py | 911 | CODE | |
| LOW | tests/sentry/integrations/slack/test_message_builder.py | 952 | CODE | |
| LOW | tests/sentry/seer/autofix/test_coding_agent.py | 180 | CODE | |
| LOW | tests/sentry/seer/agent/test_index_data.py | 155 | CODE | |
| LOW | tests/sentry/hybridcloud/models/test_outbox.py | 110 | CODE | |
| LOW | tests/sentry/hybridcloud/models/test_outbox.py | 433 | CODE | |
| LOW | tests/sentry/users/models/test_user.py | 197 | CODE | |
| LOW | tests/sentry/event_manager/test_event_manager.py | 2456 | CODE | |
| LOW | …w_engine/migration_helpers/test_migrate_rule_action.py | 73 | CODE | |
| LOW | …sentry/workflow_engine/processors/test_data_sources.py | 120 | CODE | |
| LOW | tests/sentry/db/test_transactions.py | 100 | CODE | |
| LOW | tests/sentry/db/test_transactions.py | 101 | CODE | |
| LOW | …ntry/db/models/fields/test_hybrid_cloud_foreign_key.py | 8 | CODE | |
| LOW | tests/sentry/api/test_path_params.py | 16 | CODE | |
| LOW | tests/sentry/api/test_path_params.py | 38 | CODE | |
| LOW | tests/sentry/api/test_event_search.py | 192 | CODE | |
| LOW | tests/sentry/api/test_base.py | 523 | CODE | |
| 989 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/relay_integration/lang/javascript/test_plugin.py | 778 | # ------------ | COMMENT |
| MEDIUM | tests/relay_integration/lang/javascript/test_plugin.py | 814 | # ---------- | COMMENT |
| MEDIUM | tests/relay_integration/lang/javascript/test_plugin.py | 846 | # ---------- | COMMENT |
| MEDIUM | tests/relay_integration/lang/javascript/test_plugin.py | 927 | # ------------ | COMMENT |
| MEDIUM | tests/relay_integration/lang/javascript/test_plugin.py | 967 | # ---------- | COMMENT |
| MEDIUM | tests/relay_integration/lang/javascript/test_plugin.py | 1005 | # ---------- | COMMENT |
| MEDIUM | …ntry/grouping/test_enhancer_dart_flutter_javascript.py | 30 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | …ntry/grouping/test_enhancer_dart_flutter_javascript.py | 32 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …ntry/grouping/test_enhancer_dart_flutter_javascript.py | 47 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …ntry/grouping/test_enhancer_dart_flutter_javascript.py | 49 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …ntry/grouping/test_enhancer_dart_flutter_javascript.py | 62 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …ntry/grouping/test_enhancer_dart_flutter_javascript.py | 64 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …s/sentry/grouping/test_enhancer_dart_flutter_native.py | 33 | # --------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …s/sentry/grouping/test_enhancer_dart_flutter_native.py | 35 | # --------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …s/sentry/grouping/test_enhancer_dart_flutter_native.py | 62 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …s/sentry/grouping/test_enhancer_dart_flutter_native.py | 64 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …s/sentry/grouping/test_enhancer_dart_flutter_native.py | 89 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …s/sentry/grouping/test_enhancer_dart_flutter_native.py | 91 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …s/sentry/grouping/test_enhancer_dart_flutter_native.py | 117 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …s/sentry/grouping/test_enhancer_dart_flutter_native.py | 119 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …s/sentry/grouping/test_enhancer_dart_flutter_native.py | 134 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …s/sentry/grouping/test_enhancer_dart_flutter_native.py | 136 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …s/sentry/grouping/test_enhancer_dart_flutter_native.py | 149 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …s/sentry/grouping/test_enhancer_dart_flutter_native.py | 151 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …s/sentry/grouping/test_enhancer_dart_flutter_native.py | 163 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …s/sentry/grouping/test_enhancer_dart_flutter_native.py | 165 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …s/sentry/grouping/test_enhancer_dart_flutter_native.py | 177 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …s/sentry/grouping/test_enhancer_dart_flutter_native.py | 182 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …sts/sentry/preprod/test_build_distribution_webhooks.py | 20 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …sts/sentry/preprod/test_build_distribution_webhooks.py | 22 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …sts/sentry/preprod/test_build_distribution_webhooks.py | 79 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …sts/sentry/preprod/test_build_distribution_webhooks.py | 81 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …sts/sentry/preprod/test_build_distribution_webhooks.py | 244 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …sts/sentry/preprod/test_build_distribution_webhooks.py | 246 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …sts/sentry/preprod/test_build_distribution_webhooks.py | 264 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …sts/sentry/preprod/test_build_distribution_webhooks.py | 266 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | …sts/sentry/preprod/test_build_distribution_webhooks.py | 182 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | …sts/sentry/preprod/test_build_distribution_webhooks.py | 184 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/sentry/preprod/size_analysis/test_webhooks.py | 108 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/sentry/preprod/size_analysis/test_webhooks.py | 110 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/sentry/preprod/size_analysis/test_webhooks.py | 179 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/sentry/preprod/size_analysis/test_webhooks.py | 181 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/sentry/preprod/size_analysis/test_webhooks.py | 489 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/sentry/preprod/size_analysis/test_webhooks.py | 491 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/sentry/preprod/size_analysis/test_webhooks.py | 531 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/sentry/preprod/size_analysis/test_webhooks.py | 533 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/sentry/preprod/size_analysis/test_webhooks.py | 25 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/sentry/preprod/size_analysis/test_webhooks.py | 27 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/sentry/preprod/size_analysis/test_webhooks.py | 419 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/sentry/preprod/size_analysis/test_webhooks.py | 421 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | …endpoints/test_explore_saved_query_ai_conversations.py | 32 | # ── Create ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …endpoints/test_explore_saved_query_ai_conversations.py | 117 | # ── Read ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …endpoints/test_explore_saved_query_ai_conversations.py | 162 | # ── Update ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …endpoints/test_explore_saved_query_ai_conversations.py | 211 | # ── Delete ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | …ts/sentry/integrations/claude_code/test_integration.py | 213 | # ── get_client ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | …ts/sentry/integrations/claude_code/test_integration.py | 317 | # ── agent_version coercion ─────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | …ts/sentry/integrations/claude_code/test_integration.py | 338 | # ── Property getters ───────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | …ts/sentry/integrations/claude_code/test_integration.py | 353 | # ── update_organization_config ─────────────────────────────────── | COMMENT |
| MEDIUM⚡ | …ts/sentry/integrations/claude_code/test_integration.py | 379 | # ── get_config_data ────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ts/sentry/integrations/claude_code/test_integration.py | 81 | # ── Provider metadata ──────────────────────────────────────────── | COMMENT |
| 154 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL⚡ | tests/relay_integration/lang/java/test_plugin.py | 132 | 72:73:java.lang.String io.sentry.samples.instrumentation.data.Track.getName():46:46 -> onCreate | CODE |
| CRITICAL⚡ | tests/relay_integration/lang/java/test_plugin.py | 135 | 77:78:java.lang.String io.sentry.samples.instrumentation.data.Track.getComposer():48:48 -> onCreate | CODE |
| CRITICAL⚡ | tests/relay_integration/lang/java/test_plugin.py | 138 | 82:83:long io.sentry.samples.instrumentation.data.Track.getMillis():51:51 -> onCreate | CODE |
| CRITICAL⚡ | tests/relay_integration/lang/java/test_plugin.py | 141 | 91:92:float io.sentry.samples.instrumentation.data.Track.getPrice():53:53 -> onCreate | CODE |
| CRITICAL⚡ | tests/relay_integration/lang/java/test_plugin.py | 163 | 36:44:void io.sentry.samples.instrumentation.ui.AnotherClassInSameFile.otherFun():21 -> onMenuItemClick | CODE |
| CRITICAL⚡ | tests/relay_integration/lang/java/test_plugin.py | 164 | 36:44:void io.sentry.samples.instrumentation.ui.AnotherClassInSameFile.helloOther():17 -> onMenuItemClick | CODE |
| CRITICAL⚡ | tests/relay_integration/lang/java/test_plugin.py | 166 | 36:44:void io.sentry.samples.instrumentation.ui.SomeService.helloThere():5 -> onMenuItemClick | CODE |
| CRITICAL⚡ | tests/relay_integration/lang/java/test_plugin.py | 205 | 176:187:void io.sentry.samples.instrumentation.ui.EditActivity.addNewTrack(java.lang.String,java.lang.String,long,fl | CODE |
| CRITICAL⚡ | tests/relay_integration/lang/java/test_plugin.py | 210 | 188:190:void io.sentry.samples.instrumentation.ui.EditActivity.addNewTrack(java.lang.String,java.lang.String,long,fl | CODE |
| CRITICAL⚡ | tests/relay_integration/lang/java/test_plugin.py | 214 | 191:198:void io.sentry.samples.instrumentation.ui.EditActivity.addNewTrack(java.lang.String,java.lang.String,long,fl | CODE |
| CRITICAL⚡ | tests/relay_integration/lang/java/test_plugin.py | 228 | 239:250:void io.sentry.samples.instrumentation.ui.EditActivity.update(io.sentry.samples.instrumentation.data.Track,j | CODE |
| CRITICAL⚡ | tests/relay_integration/lang/java/test_plugin.py | 232 | 251:265:io.sentry.samples.instrumentation.data.Track io.sentry.samples.instrumentation.data.Track.copy(long,java.lan | CODE |
| CRITICAL⚡ | tests/relay_integration/lang/java/test_plugin.py | 234 | 251:265:void io.sentry.samples.instrumentation.ui.EditActivity.update(io.sentry.samples.instrumentation.data.Track,j | CODE |
| CRITICAL⚡ | tests/relay_integration/lang/java/test_plugin.py | 238 | 266:273:void io.sentry.samples.instrumentation.ui.EditActivity.update(io.sentry.samples.instrumentation.data.Track,j | CODE |
| CRITICAL | tests/sentry/auth/test_password_validation.py | 4 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | tests/sentry/models/test_release.py | 5 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | tests/sentry/models/test_orgauthtoken.py | 2 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | tests/sentry/models/test_project.py | 5 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | tests/sentry/integrations/discord/test_utils.py | 4 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | tests/sentry/integrations/discord/test_issue_alert.py | 6 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | …ints/test_organization_integration_channel_validate.py | 5 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | tests/sentry/integrations/slack/utils/test_channel.py | 5 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | tests/sentry/workflow_engine/test_base.py | 7 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | …flow_engine/endpoints/validators/actions/test_slack.py | 3 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | …ow_engine/endpoints/validators/actions/test_discord.py | 3 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | tests/sentry/workflow_engine/models/test_workflow.py | 2 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | tests/sentry/db/models/fields/test_slug.py | 4 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | …ents/endpoints/test_organization_alert_rule_details.py | 12 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | …ntry/incidents/endpoints/validators/test_validators.py | 390 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | …/profiling/flamegraph/aggregateFlamegraphTreeTable.tsx | 267 | selfWeight={r.item.node.node.totalWeight.toFixed(0)} | CODE |
| CRITICAL | …tomations/components/automationBuilderContext.spec.tsx | 16 | const conditions = result.current.state.triggers.conditions.filter( | CODE |
| CRITICAL | …tomations/components/automationBuilderContext.spec.tsx | 31 | const addedCondition = result.current.state.triggers.conditions.find( | CODE |
| CRITICAL | src/social_auth/fields.py | 5 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/event_manager.py | 17 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/monitors/validators.py | 7 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/spans/consumers/process_segments/message.py | 10 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/runner/commands/createuser.py | 26 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/runner/commands/createuser.py | 37 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/stacktraces/functions.py | 8 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/utils/avatar.py | 13 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/models/orgauthtoken.py | 7 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/receivers/releases.py | 4 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/integrations/discord/utils/channel.py | 5 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | …/sentry/integrations/discord/utils/channel_from_url.py | 3 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | …entry/integrations/discord/actions/issue_alert/form.py | 6 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | …endpoints/organization_integration_channel_validate.py | 6 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/integrations/slack/utils/channel.py | 7 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/integrations/slack/actions/form.py | 8 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/integrations/perforce/integration.py | 10 | from django.core.exceptions import ValidationError as DjangoValidationError | CODE |
| CRITICAL | …y/sentry_apps/api/endpoints/project_legacy_webhooks.py | 1 | from django.core.exceptions import ValidationError as DjangoValidationError | CODE |
| CRITICAL | src/sentry/seer/anomaly_detection/store_data.py | 8 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | …y/seer/anomaly_detection/store_data_workflow_engine.py | 5 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/release_health/tasks.py | 7 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/relocation/tasks/process.py | 17 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/data_export/endpoints/data_export.py | 5 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/db/models/fields/jsonfield.py | 33 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/api/endpoints/organization_auth_tokens.py | 3 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | src/sentry/backup/services/import_export/impl.py | 11 | from django.core.exceptions import ValidationError as DjangoValidationError | CODE |
| CRITICAL | src/sentry/uptime/autodetect/url_extraction.py | 6 | from django.core.exceptions import ValidationError | CODE |
| CRITICAL | …notifications/notification_action/action_validation.py | 3 | from django.core.exceptions import ValidationError | CODE |
| 2 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/snuba/test_outcomes.py | 0 | sort the groups of the results array by the `by` object, ensuring a stable order | STRING |
| HIGH | tests/snuba/api/endpoints/test_organization_stats_v2.py | 0 | sort the groups of the results array by the `by` object, ensuring a stable order | STRING |
| HIGH | tests/snuba/api/endpoints/test_organization_sessions.py | 0 | sort the groups of the results array by the `by` object, ensuring a stable order | STRING |
| HIGH | …/monitors/endpoints/test_organization_monitor_index.py | 0 | test that members cannot assign a team they are not a member of as owner. this is a regression test for an idor vulnerab | STRING |
| HIGH | …ry/uptime/endpoints/test_project_uptime_alert_index.py | 0 | test that members cannot assign a team they are not a member of as owner. this is a regression test for an idor vulnerab | STRING |
| HIGH | …idents/endpoints/test_organization_alert_rule_index.py | 0 | test that members cannot assign a team they are not a member of as owner. this is a regression test for an idor vulnerab | STRING |
| HIGH | …/monitors/endpoints/test_organization_monitor_index.py | 0 | test that members can assign a team they are a member of as owner. | STRING |
| HIGH | …ry/uptime/endpoints/test_project_uptime_alert_index.py | 0 | test that members can assign a team they are a member of as owner. | STRING |
| HIGH | …idents/endpoints/test_organization_alert_rule_index.py | 0 | test that members can assign a team they are a member of as owner. | STRING |
| HIGH | …/monitors/endpoints/test_organization_monitor_index.py | 0 | test that users with team:admin scope can assign any team as owner. | STRING |
| HIGH | …ry/uptime/endpoints/test_project_uptime_alert_index.py | 0 | test that users with team:admin scope can assign any team as owner. | STRING |
| HIGH | …idents/endpoints/test_organization_alert_rule_index.py | 0 | test that users with team:admin scope can assign any team as owner. | STRING |
| HIGH | …/monitors/endpoints/test_organization_monitor_index.py | 0 | test that when open team membership is enabled, members can assign any team as owner. | STRING |
| HIGH | …ry/uptime/endpoints/test_project_uptime_alert_index.py | 0 | test that when open team membership is enabled, members can assign any team as owner. | STRING |
| HIGH | …idents/endpoints/test_organization_alert_rule_index.py | 0 | test that when open team membership is enabled, members can assign any team as owner. | STRING |
| HIGH | tests/sentry/integrations/gitlab/test_integration.py | 0 | common setup for assignee sync tests. returns: tuple: (user, installation, external_issue, integration, group) | STRING |
| HIGH | …try/integrations/github_enterprise/test_integration.py | 0 | common setup for assignee sync tests. returns: tuple: (user, installation, external_issue, integration, group) | STRING |
| HIGH | tests/sentry/integrations/github/test_integration.py | 0 | common setup for assignee sync tests. returns: tuple: (user, installation, external_issue, integration, group) | STRING |
| HIGH | tests/sentry/integrations/gitlab/test_integration.py | 0 | test that @ symbol is stripped from external_name when syncing | STRING |
| HIGH | …try/integrations/github_enterprise/test_integration.py | 0 | test that @ symbol is stripped from external_name when syncing | STRING |
| HIGH | tests/sentry/integrations/github/test_integration.py | 0 | test that @ symbol is stripped from external_name when syncing | STRING |
| HIGH | tests/sentry/integrations/gitlab/test_integration.py | 0 | test that sync handles invalid external issue key format gracefully | STRING |
| HIGH | …try/integrations/github_enterprise/test_integration.py | 0 | test that sync handles invalid external issue key format gracefully | STRING |
| HIGH | tests/sentry/integrations/github/test_integration.py | 0 | test that sync handles invalid external issue key format gracefully | STRING |
| HIGH | …y/integrations/github_enterprise/test_ticket_action.py | 0 | test that the absence of dynamic_form_fields in the action fails validation | STRING |
| HIGH | tests/sentry/integrations/jira/test_ticket_action.py | 0 | test that the absence of dynamic_form_fields in the action fails validation | STRING |
| HIGH | tests/sentry/integrations/github/test_ticket_action.py | 0 | test that the absence of dynamic_form_fields in the action fails validation | STRING |
| HIGH | …/sentry/integrations/jira_server/test_ticket_action.py | 0 | test that the absence of dynamic_form_fields in the action fails validation | STRING |
| HIGH | …ry/integrations/slack/notifications/test_escalating.py | 0 | test that a slack message is sent with the expected payload when a generic issue type is resolved in a release and block | STRING |
| HIGH | …s/slack/notifications/test_resolved_in_pull_request.py | 0 | test that a slack message is sent with the expected payload when a generic issue type is resolved in a release and block | STRING |
| HIGH | …ations/slack/notifications/test_resolved_in_release.py | 0 | test that a slack message is sent with the expected payload when a generic issue type is resolved in a release and block | STRING |
| HIGH | …ntry/integrations/slack/notifications/test_resolved.py | 0 | test that a slack message is sent with the expected payload when a generic issue type is resolved in a release and block | STRING |
| HIGH | …ry/integrations/slack/notifications/test_unassigned.py | 0 | test that a slack message is sent with the expected payload when a generic issue type is resolved in a release and block | STRING |
| HIGH | …ntry/integrations/slack/notifications/test_assigned.py | 0 | test that a slack message is sent with the expected payload when a generic issue type is resolved in a release and block | STRING |
| HIGH | …ry/integrations/slack/notifications/test_regression.py | 0 | test that a slack message is sent with the expected payload when a generic issue type is resolved in a release and block | STRING |
| HIGH | tests/sentry/seer/fetch_issues/test_by_function_name.py | 0 | test that _fetch_issues_from_repo_projects returns a list of group objects. | STRING |
| HIGH | tests/sentry/seer/fetch_issues/test_by_error_type.py | 0 | test that _fetch_issues_from_repo_projects returns a list of group objects. | STRING |
| HIGH | tests/sentry/seer/fetch_issues/test_by_text_query.py | 0 | test that _fetch_issues_from_repo_projects returns a list of group objects. | STRING |
| HIGH | tests/sentry/seer/fetch_issues/test_by_function_name.py | 0 | test that _fetch_issues_from_repo_projects returns empty list when no matches. | STRING |
| HIGH | tests/sentry/seer/fetch_issues/test_by_error_type.py | 0 | test that _fetch_issues_from_repo_projects returns empty list when no matches. | STRING |
| HIGH | tests/sentry/seer/fetch_issues/test_by_text_query.py | 0 | test that _fetch_issues_from_repo_projects returns empty list when no matches. | STRING |
| HIGH | tests/sentry/api/endpoints/test_prompts_activity.py | 0 | regression test: cannot access projects from other organizations (idor). | STRING |
| HIGH | …oints/issues/test_organization_derive_code_mappings.py | 0 | regression test: cannot access projects from other organizations (idor). | STRING |
| HIGH | …ints/test_organization_ondemand_rule_stats_endpoint.py | 0 | regression test: cannot access projects from other organizations (idor). | STRING |
| HIGH | …ssue_detection/test_file_io_on_main_thread_detector.py | 0 | \ # compiler: r8 # compiler_version: 2.0.74 # min_api: 16 # pg_map_id: 5b46fdc # common_typos_disable # {"id":"com.andro | STRING |
| HIGH | tests/sentry/profiles/test_task.py | 0 | \ # compiler: r8 # compiler_version: 2.0.74 # min_api: 16 # pg_map_id: 5b46fdc # common_typos_disable # {"id":"com.andro | STRING |
| HIGH | tests/sentry/profiles/test_java.py | 0 | \ # compiler: r8 # compiler_version: 2.0.74 # min_api: 16 # pg_map_id: 5b46fdc # common_typos_disable # {"id":"com.andro | STRING |
| HIGH | …try/uptime/endpoints/test_organization_uptime_stats.py | 0 | store a single uptime data row. must be implemented by subclasses. | STRING |
| HIGH | …y/uptime/endpoints/test_organization_uptime_summary.py | 0 | store a single uptime data row. must be implemented by subclasses. | STRING |
| HIGH | …ime/endpoints/test_project_uptime_alert_check_index.py | 0 | store a single uptime data row. must be implemented by subclasses. | STRING |
| HIGH | src/social_auth/fields.py | 0 | add a descriptor for backwards compatibility with previous django behavior. | STRING |
| HIGH | src/sentry/db/models/fields/jsonfield.py | 0 | add a descriptor for backwards compatibility with previous django behavior. | STRING |
| HIGH | src/sentry/db/models/fields/gzippeddict.py | 0 | add a descriptor for backwards compatibility with previous django behavior. | STRING |
| HIGH | src/sentry/db/models/fields/array.py | 0 | add a descriptor for backwards compatibility with previous django behavior. | STRING |
| HIGH | src/sudo/forms.py | 0 | sudo.views ~~~~~~~~~~ :copyright: (c) 2020 by matt robenolt. :license: bsd, see license for more details. | STRING |
| HIGH | src/sudo/utils.py | 0 | sudo.views ~~~~~~~~~~ :copyright: (c) 2020 by matt robenolt. :license: bsd, see license for more details. | STRING |
| HIGH | src/sudo/views.py | 0 | sudo.views ~~~~~~~~~~ :copyright: (c) 2020 by matt robenolt. :license: bsd, see license for more details. | STRING |
| HIGH | src/sentry/organizations/absolute_url.py | 0 | get an absolute url to `path` for this organization. this method takes customer-domains into account and will update the | STRING |
| HIGH | src/sentry/organizations/services/organization/model.py | 0 | get an absolute url to `path` for this organization. this method takes customer-domains into account and will update the | STRING |
| HIGH | src/sentry/models/organization.py | 0 | get an absolute url to `path` for this organization. this method takes customer-domains into account and will update the | STRING |
| 74 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH⚡ | tests/relay_integration/lang/java/test_plugin.py | 306 | if (originalTrack == null) "ui.action.add" else "ui.action.edit", | CODE |
| HIGH⚡ | tests/relay_integration/lang/java/test_plugin.py | 310 | val name = nameInput.text.toString() | CODE |
| HIGH⚡ | tests/relay_integration/lang/java/test_plugin.py | 311 | val composer = composerInput.text.toString() | CODE |
| HIGH⚡ | tests/relay_integration/lang/java/test_plugin.py | 312 | val duration = durationInput.text.toString() | CODE |
| HIGH⚡ | tests/relay_integration/lang/java/test_plugin.py | 313 | val unitPrice = unitPriceInput.text.toString() | CODE |
| HIGH⚡ | tests/relay_integration/lang/java/test_plugin.py | 348 | albumId = null, | CODE |
| HIGH⚡ | tests/relay_integration/lang/java/test_plugin.py | 350 | mediaTypeId = null, | CODE |
| HIGH⚡ | tests/relay_integration/lang/java/test_plugin.py | 351 | genreId = null, | CODE |
| HIGH⚡ | tests/relay_integration/lang/java/test_plugin.py | 353 | bytes = null, | CODE |
| HIGH | tests/relay_integration/lang/java/test_plugin.py | 292 | durationInput.setText(millis.toString()) | CODE |
| HIGH | tests/relay_integration/lang/java/test_plugin.py | 293 | unitPriceInput.setText(price.toString()) | CODE |
| HIGH | tests/relay_integration/lang/java/test_plugin.py | 325 | if (originalTrack == null) { | CODE |
| HIGH⚡ | tests/acceptance/test_scm_onboarding.py | 526 | self.browser.driver.execute_script("window.__testOpenUrl = null;") | CODE |
| HIGH | tests/acceptance/test_scm_onboarding.py | 491 | window.__testOpenUrl = null; | STRING |
| HIGH⚡ | tests/acceptance/test_error_page_embed.py | 29 | const injectionPoint = window.document.head || window.document.body; | CODE |
| HIGH | tests/sentry/tempest/test_tempest.py | 43 | mock_fetch.return_value.content = b'{"latest_id": null}' | CODE |
| HIGH⚡ | tests/sentry/preprod/test_tasks.py | 703 | b'{"analysis_duration": 1.5, "download_size": 1000, "install_size": 2000, "treemap": null, "analysis_version | CODE |
| HIGH⚡ | tests/sentry/preprod/test_tasks.py | 797 | b'{"analysis_duration": 1.5, "download_size": 1000, "install_size": 2000, "treemap": null, "analysis_version | CODE |
| HIGH | tests/sentry/preprod/test_tasks.py | 671 | b'{"analysis_duration": 1.5, "download_size": 1000, "install_size": 2000, "treemap": null, "analysis_version | CODE |
| HIGH | tests/sentry/preprod/test_tasks.py | 818 | b'{"analysis_duration": 1.5, "download_size": 1000, "install_size": 2000, "treemap": null, "analysis_version | CODE |
| HIGH | tests/sentry/preprod/test_tasks.py | 835 | b'{"analysis_duration": 2.5, "download_size": 5000, "install_size": 10000, "treemap": null, "analysis_versio | CODE |
| HIGH | tests/sentry/preprod/test_tasks.py | 873 | b'{"analysis_duration": 2.5, "download_size": 5000, "install_size": 10000, "treemap": null, "analysis_versio | CODE |
| HIGH | tests/sentry/preprod/test_tasks.py | 904 | b'{"analysis_duration": 2.5, "download_size": 5000, "install_size": 10000, "treemap": null, "analysis_versio | CODE |
| HIGH | tests/sentry/preprod/test_tasks.py | 917 | b'{"analysis_duration": 1.5, "download_size": 3500, "install_size": 7000, "treemap": null, "analysis_version | CODE |
| HIGH | tests/sentry/preprod/test_tasks.py | 945 | b'{"analysis_duration": 1.5, "download_size": 1000, "install_size": 2000, "treemap": null, "analysis_ver | CODE |
| HIGH | tests/sentry/preprod/test_tasks.py | 971 | b'{"analysis_duration": 1.5, "download_size": 1000, "install_size": 2000, "treemap": null, "analysis_ver | CODE |
| HIGH | tests/sentry/preprod/test_tasks.py | 987 | b'{"analysis_duration": 2.5, "download_size": 5000, "install_size": 10000, "treemap": null, "analysis_ve | CODE |
| HIGH | tests/sentry/integrations/vercel/test_uninstall.py | 49 | "team" : null, | CODE |
| HIGH | tests/sentry/integrations/vsts/test_client.py | 358 | text='{"$id":"1","innerException":null,"message":"According to Microsoft Entra, your Identity xxx is current | CODE |
| HIGH | tests/sentry/integrations/vsts/test_client.py | 397 | == '{"$id":"1","innerException":null,"message":"According to Microsoft Entra, your Identity xxx is currently | CODE |
| HIGH | tests/sentry/integrations/slack/test_unfurl.py | 1618 | # aggregateField that parses to a non-dict (int, list, string, null) | COMMENT |
| HIGH | tests/sentry/lang/javascript/test_errormapping.py | 21 | "109": "%s.render(): A valid React element (or null) must be returned. You may have returned undefined, an arr | CODE |
| HIGH⚡ | tests/sentry/lang/javascript/test_errormapping.py | 66 | "Component.render(): A valid React element (or null) must be " | STRING |
| HIGH⚡ | tests/sentry/lang/javascript/test_errormapping.py | 67 | "returned. You may have returned undefined, an array or " | STRING |
| HIGH | tests/sentry/lang/javascript/test_errormapping.py | 206 | "109": "%s.render(): A valid React element (or null) must be returned. You may have returned undefined, an arr | CODE |
| HIGH⚡ | tests/sentry/seer/autofix/pr_iteration/test_types.py | 114 | raw = '{"text": "please fix", "source": {"type": "user-ui", "user_id": 5, "user": null}}' | CODE |
| HIGH | tests/sentry/seer/autofix/pr_iteration/test_types.py | 142 | '{"type": "user-ui", "user_id": 1, "user": null}},' | CODE |
| HIGH | tests/sentry/seer/autofix/pr_iteration/test_types.py | 154 | raw = '{"text": "please fix", "source": {"type": "user-ui", "user_id": 5, "user": null}}' | CODE |
| HIGH⚡ | tests/sentry/seer/similarity/test_utils.py | 845 | assert filter_null_from_string(string_with_null) == 'String with null , "" is null' | CODE |
| HIGH | …lays/endpoints/test_organization_replay_events_meta.py | 138 | don't have this field populated (it is null). Over time this will no longer be | STRING |
| HIGH | tests/sentry/event_manager/test_event_manager.py | 3437 | """Test times_seen calculation with invalid sample rates (null, 0, negative, > 1)""" | STRING |
| HIGH | …ry/workflow_engine/processors/test_delayed_workflow.py | 1165 | ('{"event_id": null}', "event_id"), # null event_id | CODE |
| HIGH⚡ | tests/sentry/pr_metrics/test_judge.py | 348 | # and must not reach the upsert (which would otherwise store a null). | COMMENT |
| HIGH | tests/sentry/snuba/metrics/test_extraction.py | 66 | ("count()", "", False), # Malformed aggregate should return false | CODE |
| HIGH | tests/sentry/backup/test_findings.py | 76 | "left_pk": null, | CODE |
| HIGH⚡ | tests/sentry/backup/test_validate.py | 425 | "last_login": null, | STRING |
| HIGH⚡ | tests/sentry/backup/test_validate.py | 433 | "is_sentry_app": null, | STRING |
| HIGH | tests/sentry/backup/test_validate.py | 352 | "last_login": null, | STRING |
| HIGH | tests/sentry/backup/test_validate.py | 369 | "last_login": null, | STRING |
| HIGH | tests/sentry/backup/test_validate.py | 609 | "last_login": null, | STRING |
| HIGH | tests/sentry/backup/test_validate.py | 620 | "last_login": null, | STRING |
| HIGH | tests/sentry/backup/test_validate.py | 661 | "last_login": null, | STRING |
| HIGH | tests/sentry/backup/test_validate.py | 672 | "last_login": null, | STRING |
| HIGH | tests/sentry/backup/test_validate.py | 718 | "last_login": null, | STRING |
| HIGH | tests/sentry/backup/test_validate.py | 729 | "last_login": null, | STRING |
| HIGH | tests/sentry/backup/test_validate.py | 766 | "last_login": null, | STRING |
| HIGH | tests/sentry/backup/test_validate.py | 777 | "last_login": null, | STRING |
| HIGH | tests/sentry/backup/test_validate.py | 821 | "last_login": null, | STRING |
| HIGH | tests/sentry/backup/test_validate.py | 866 | "last_login": null, | STRING |
| HIGH | self-hosted/sentry.conf.py | 77 | "Error: REDIS_PORT_6379_TCP_ADDR (or SENTRY_REDIS_HOST) is undefined, did you forget to `--link` a redis contain | CODE |
| 47 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/js/sentry-test/reactTestingLibrary.spec.tsx | 144 | <button onClick={() => setSearchParams({id: '200', name: 'Jane Doe'})}> | CODE |
| LOW | tests/js/sentry-test/reactTestingLibrary.spec.tsx | 159 | name: 'John Doe', | CODE |
| LOW | tests/js/sentry-test/reactTestingLibrary.spec.tsx | 173 | expect(router.location.query).toEqual({id: '200', name: 'Jane Doe'}); | CODE |
| LOW | tests/flagpole/test_conditions.py | 242 | context=EvaluationContext({"email": "user@example.com"}), segment_name="test" | CODE |
| LOW | tests/flagpole/test_conditions.py | 354 | context=EvaluationContext({"email": "user@example.com"}), segment_name="test" | CODE |
| LOW | …dpoints/test_organization_events_stats_span_indexed.py | 2367 | self.user = self.create_user("user@example.com", is_superuser=False) | CODE |
| LOW⚡ | tests/snuba/api/endpoints/test_organization_events.py | 2608 | query = {"field": ["stack.filename", "message"], "query": "user.email:*@example.org"} | CODE |
| LOW | tests/snuba/api/endpoints/test_organization_events.py | 6033 | self.user = self.create_user("user@example.com", is_superuser=False) | CODE |
| LOW⚡ | …api/endpoints/test_organization_events_span_indexed.py | 4910 | "user.email": "test@test.com", | CODE |
| LOW⚡ | …api/endpoints/test_organization_events_span_indexed.py | 4923 | "sentry_tags": {"user.email": "test@test.com"}, | CODE |
| LOW | …api/endpoints/test_organization_events_span_indexed.py | 1521 | "sentry_tags": {"user.email": "test@test.com"}, | CODE |
| LOW | …api/endpoints/test_organization_events_span_indexed.py | 1549 | "user.display": "test@test.com", | CODE |
| LOW | …api/endpoints/test_organization_events_span_indexed.py | 2580 | "sentry_tags": {"status": "success", "user.email": "test@test.com"}, | CODE |
| LOW | …api/endpoints/test_organization_events_span_indexed.py | 4884 | "sentry_tags": {"user.email": "test@test.com"}, | CODE |
| LOW | …endpoints/test_organization_events_timeseries_spans.py | 143 | self.user = self.create_user("user@example.com", is_superuser=False) | CODE |
| LOW | …onitors/consumers/test_incident_occurrence_consumer.py | 41 | KafkaPayload(b"fake-key", MONITORS_INCIDENT_OCCURRENCES.encode(incident_occurrence), []), | CODE |
| LOW | tests/sentry/monitors/consumers/test_end_to_end.py | 88 | KafkaPayload(b"fake-key", msgpack.packb(wrapper), []), | CODE |
| LOW | …/sentry/monitors/consumers/test_clock_tick_consumer.py | 60 | KafkaPayload(b"fake-key", MONITORS_CLOCK_TICK_CODEC.encode({"ts": ts.timestamp()}), []), | CODE |
| LOW | …/sentry/monitors/consumers/test_clock_tick_consumer.py | 100 | KafkaPayload(b"fake-key", MONITORS_CLOCK_TICK_CODEC.encode({"ts": ts.timestamp()}), []), | CODE |
| LOW | …sentry/monitors/consumers/test_clock_tasks_consumer.py | 30 | KafkaPayload(b"fake-key", MONITORS_CLOCK_TASKS_CODEC.encode(task), []), | CODE |
| LOW | …sts/sentry/monitors/consumers/test_monitor_consumer.py | 116 | KafkaPayload(b"fake-key", msgpack.packb(wrapper), []), | CODE |
| LOW | …sts/sentry/monitors/consumers/test_monitor_consumer.py | 177 | KafkaPayload(b"fake-key", msgpack.packb(wrapper), []), | CODE |
| LOW⚡ | …eleases/endpoints/test_organization_release_details.py | 1615 | data={"commits": [{"id": "a", "author_email": "email[test]@example.org"}]} | CODE |
| LOW | tests/sentry/tasks/test_relay.py | 425 | cfg = {"dummy-key": "val"} | CODE |
| LOW | tests/sentry/tasks/test_relay.py | 434 | assert "dummy-key" not in cfg_from_cache | CODE |
| LOW | tests/sentry/tasks/test_relay.py | 448 | cfg = {"dummy-key": "val"} | CODE |
| LOW | tests/sentry/flags/endpoints/test_secrets.py | 184 | new_user = self.create_user("test@test.com") | CODE |
| LOW | tests/sentry/flags/endpoints/test_secrets.py | 224 | new_user = self.create_user("test@test.com") | CODE |
| LOW | tests/sentry/flags/endpoints/test_secrets.py | 255 | new_user = self.create_user("test@test.com") | CODE |
| LOW | …try/auth_v2/endpoints/test_auth_merge_user_accounts.py | 70 | self.unrelated_user = self.create_user(email="foo@bar.com") | CODE |
| LOW⚡ | tests/sentry/identity/test_oauth2.py | 52 | responses.POST, "https://example.org/oauth/token", json={"token": "a-fake-token"} | CODE |
| LOW⚡ | tests/sentry/identity/test_oauth2.py | 59 | assert "a-fake-token" == result["token"] | CODE |
| LOW⚡ | tests/sentry/identity/test_oauth2.py | 77 | responses.POST, "https://example.org/oauth/token", json={"token": "a-fake-token"} | CODE |
| LOW⚡ | tests/sentry/identity/test_oauth2.py | 84 | assert "a-fake-token" == result["token"] | CODE |
| LOW | tests/sentry/identity/test_oauth2.py | 153 | json={"token": "a-fake-token"}, | CODE |
| LOW | tests/sentry/identity/test_oauth2.py | 163 | assert_failure_metric(mock_record, ApiUnauthorized('{"token": "a-fake-token"}')) | CODE |
| LOW⚡ | tests/sentry/identity/test_oauth2.py | 301 | json={"access_token": "a-fake-token"}, | CODE |
| LOW⚡ | tests/sentry/identity/test_oauth2.py | 309 | assert ctx.fetch_state("data") == {"access_token": "a-fake-token"} | CODE |
| LOW | tests/sentry/identity/test_pipeline.py | 27 | "email": "user@example.com", | CODE |
| LOW | tests/sentry/identity/gcp/test_provider.py | 101 | {"sub": "google-user-123", "email": "user@example.com", "name": "Test User"} | CODE |
| LOW⚡ | tests/sentry/identity/gcp/test_provider.py | 116 | assert result["email"] == "user@example.com" | CODE |
| LOW⚡ | tests/sentry/identity/gcp/test_provider.py | 125 | id_token = _make_id_token({"sub": "google-user-123", "email": "user@example.com"}) | CODE |
| LOW⚡ | tests/sentry/identity/gcp/test_provider.py | 129 | assert result["name"] == "user@example.com" | CODE |
| LOW⚡ | tests/sentry/identity/gcp/test_provider.py | 142 | id_token = _make_id_token({"email": "user@example.com"}) | CODE |
| LOW⚡ | tests/sentry/identity/datadog/test_provider.py | 707 | "user_email": "user@example.com", | CODE |
| LOW⚡ | tests/sentry/identity/datadog/test_provider.py | 717 | assert result["email"] == "user@example.com" | CODE |
| LOW | tests/sentry/identity/datadog/test_provider.py | 464 | "user_email": "user@example.com", | CODE |
| LOW | tests/sentry/identity/datadog/test_provider.py | 486 | assert result["email"] == "user@example.com" | CODE |
| LOW | tests/sentry/identity/datadog/test_provider.py | 540 | "user_email": "user@example.com", | CODE |
| LOW | tests/sentry/identity/datadog/test_provider.py | 556 | "user_email": "user@example.com", | CODE |
| LOW | …ry/spans/consumers/process_segments/test_enrichment.py | 522 | ATTRIBUTE_NAMES.USER_EMAIL: {"type": "string", "value": "user@example.com"}, | CODE |
| LOW | tests/sentry/auth/test_helper.py | 1115 | self.admin_user = self.create_user(email="admin@example.com") | CODE |
| LOW | tests/sentry/auth/test_helper.py | 1169 | result = self._run_setup_pipeline_with_identity_email("admin@example.com") | CODE |
| LOW⚡ | tests/sentry/auth/test_email_verification.py | 52 | send_signup_verification_email("user@example.com", url_name="sentry-signup-verify-email") | CODE |
| LOW⚡ | tests/sentry/auth/test_email_verification.py | 56 | assert payload["email"] == "user@example.com" | CODE |
| LOW⚡ | …/sentry/web/frontend/test_signup_email_verification.py | 91 | resp = self._get_with_session(email="user@example.com") | CODE |
| LOW⚡ | …/sentry/web/frontend/test_signup_email_verification.py | 93 | assert self.client.session[VERIFIED_SESSION_KEY] == "user@example.com" | CODE |
| LOW⚡ | …entry/web/frontend/test_signup_verification_pending.py | 22 | session[PENDING_VERIFICATION_SESSION_KEY] = "user@example.com" | CODE |
| LOW⚡ | …entry/web/frontend/test_signup_verification_pending.py | 29 | assert b"user@example.com" in response.content | CODE |
| LOW | tests/sentry/runner/commands/test_backup.py | 597 | self.create_user("admin@example.com", is_staff=True, is_superuser=True) | CODE |
| 370 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/api_urls_to_typescript.py | 76 | # Check if this match is inside a named group by looking backwards | COMMENT |
| LOW | tools/api_urls_to_typescript.py | 88 | # Check if this is a named group by looking for (?P< | COMMENT |
| LOW | tests/sentry/tasks/test_reprocessing2.py | 60 | # Set platform to native so all parts of reprocessing fire, symbolication will | COMMENT |
| LOW | tests/sentry/tasks/test_post_process.py | 3204 | # Set times_seen_pending to 0 to ensure times_seen_with_pending < 10 | COMMENT |
| LOW | tests/sentry/tasks/test_clear_expired_snoozes.py | 38 | # Check if unexpired snooze got cleared | COMMENT |
| LOW | tests/sentry/tasks/test_clear_expired_snoozes.py | 70 | # Check if unexpired snooze got cleared | COMMENT |
| LOW | …notification_action_notification_message_repository.py | 163 | # Check if all notification messages are returned | COMMENT |
| LOW | …notification_action_notification_message_repository.py | 187 | # Check if only the notifications related to the specified action | COMMENT |
| LOW | …notification_action_notification_message_repository.py | 211 | # Check if only the notifications related to the specified group | COMMENT |
| LOW | tests/sentry/integrations/pagerduty/test_client.py | 131 | # Check if metrics is generated properly | COMMENT |
| LOW | tests/sentry/integrations/pagerduty/test_client.py | 192 | # Check if metrics is generated properly | COMMENT |
| LOW⚡ | …ts/sentry/integrations/msteams/test_message_builder.py | 389 | # Check if card is serializable to json | COMMENT |
| LOW | tests/sentry/integrations/msteams/test_webhook.py | 483 | # Check if metrics is generated properly | COMMENT |
| LOW | tests/sentry/integrations/msteams/test_client.py | 129 | # Check if metrics is generated properly | COMMENT |
| LOW | tests/sentry/integrations/msteams/test_client.py | 167 | # Check if metrics is generated properly | COMMENT |
| LOW | tests/sentry/integrations/vsts/test_client.py | 185 | # Check if metrics is generated properly | COMMENT |
| LOW | tests/sentry/seer/autofix/test_issue_summary.py | 127 | # Check if the cache was set correctly | COMMENT |
| LOW | tests/sentry/seer/autofix/test_issue_summary.py | 687 | # Check if the cache was set correctly | COMMENT |
| LOW | tests/sentry/seer/agent/test_tools.py | 3441 | # Set profile_id to None since continuous profiles use profiler_id instead | COMMENT |
| LOW | …w_engine/endpoints/test_organization_workflow_index.py | 1807 | # Set workflows to disabled for PUT tests | COMMENT |
| LOW⚡ | tests/sentry/api/endpoints/test_debug_files.py | 338 | # Set organization to "member" - member should be able to download | COMMENT |
| LOW | …sts/sentry/api/endpoints/test_relay_globalconfig_v3.py | 37 | # Set options to Relay's non-default values to avoid Relay skipping deserialization | COMMENT |
| LOW | tests/sentry/issues/test_occurrence_consumer.py | 626 | # Check if cache.set is called with the correct parameters | COMMENT |
| LOW | …ntry/issues/endpoints/test_organization_group_index.py | 1577 | # Assign group to another user and now it shouldn't show up in owner search for this team. | COMMENT |
| LOW | tests/sentry/testutils/thread_leaks/test_pytest.py | 25 | # Set _where to simulate thread leak tracking | COMMENT |
| LOW | tests/sentry/testutils/thread_leaks/test_pytest.py | 65 | # Set _where to simulate thread leak tracking | COMMENT |
| LOW | tests/sentry/testutils/thread_leaks/test_pytest.py | 118 | # Set _where to simulate thread leak tracking | COMMENT |
| LOW | …idents/endpoints/test_organization_alert_rule_index.py | 2004 | # Set limit to 2 alert rules | COMMENT |
| LOW | …sentry/deletions/test_validate_group_related_models.py | 61 | # Check if it points to Group | COMMENT |
| LOW⚡ | …c/app/gettingStartedDocs/python-chalice/onboarding.tsx | 32 | # Set traces_sample_rate to 1.0 to capture 100% | COMMENT |
| LOW⚡ | …c/app/gettingStartedDocs/python-chalice/onboarding.tsx | 40 | # Set profiles_sample_rate to 1.0 to profile 100% | COMMENT |
| LOW⚡ | …c/app/gettingStartedDocs/python-chalice/onboarding.tsx | 47 | # Set profile_session_sample_rate to 1.0 to profile 100% | COMMENT |
| LOW⚡ | …c/app/gettingStartedDocs/python-chalice/onboarding.tsx | 50 | # Set profile_lifecycle to "trace" to automatically | COMMENT |
| LOW⚡ | …tic/app/gettingStartedDocs/python-quart/onboarding.tsx | 33 | # Set traces_sample_rate to 1.0 to capture 100% | COMMENT |
| LOW⚡ | …tic/app/gettingStartedDocs/python-quart/onboarding.tsx | 41 | # Set profiles_sample_rate to 1.0 to profile 100% | COMMENT |
| LOW⚡ | …tic/app/gettingStartedDocs/python-quart/onboarding.tsx | 48 | # Set profile_session_sample_rate to 1.0 to profile 100% | COMMENT |
| LOW⚡ | …tic/app/gettingStartedDocs/python-quart/onboarding.tsx | 51 | # Set profile_lifecycle to "trace" to automatically | COMMENT |
| LOW⚡ | static/app/gettingStartedDocs/python-rq/onboarding.tsx | 27 | # Set traces_sample_rate to 1.0 to capture 100% | COMMENT |
| LOW⚡ | static/app/gettingStartedDocs/python-rq/onboarding.tsx | 35 | # Set profiles_sample_rate to 1.0 to profile 100% | COMMENT |
| LOW⚡ | static/app/gettingStartedDocs/python-rq/onboarding.tsx | 42 | # Set profile_session_sample_rate to 1.0 to profile 100% | COMMENT |
| LOW⚡ | static/app/gettingStartedDocs/python-rq/onboarding.tsx | 45 | # Set profile_lifecycle to "trace" to automatically | COMMENT |
| LOW⚡ | …c/app/gettingStartedDocs/python-tornado/onboarding.tsx | 33 | # Set traces_sample_rate to 1.0 to capture 100% | COMMENT |
| LOW⚡ | …c/app/gettingStartedDocs/python-tornado/onboarding.tsx | 41 | # Set profiles_sample_rate to 1.0 to profile 100% | COMMENT |
| LOW⚡ | …c/app/gettingStartedDocs/python-tornado/onboarding.tsx | 48 | # Set profile_session_sample_rate to 1.0 to profile 100% | COMMENT |
| LOW⚡ | …c/app/gettingStartedDocs/python-tornado/onboarding.tsx | 51 | # Set profile_lifecycle to "trace" to automatically | COMMENT |
| LOW⚡ | …/app/gettingStartedDocs/python-litestar/onboarding.tsx | 30 | # Set traces_sample_rate to 1.0 to capture 100% | COMMENT |
| LOW⚡ | …/app/gettingStartedDocs/python-litestar/onboarding.tsx | 38 | # Set profiles_sample_rate to 1.0 to profile 100% | COMMENT |
| LOW⚡ | …/app/gettingStartedDocs/python-litestar/onboarding.tsx | 45 | # Set profile_session_sample_rate to 1.0 to profile 100% | COMMENT |
| LOW⚡ | …/app/gettingStartedDocs/python-litestar/onboarding.tsx | 48 | # Set profile_lifecycle to "trace" to automatically | COMMENT |
| LOW⚡ | …c/app/gettingStartedDocs/python-fastapi/onboarding.tsx | 31 | # Set traces_sample_rate to 1.0 to capture 100% | COMMENT |
| LOW⚡ | …c/app/gettingStartedDocs/python-fastapi/onboarding.tsx | 39 | # Set profiles_sample_rate to 1.0 to profile 100% | COMMENT |
| LOW⚡ | …c/app/gettingStartedDocs/python-fastapi/onboarding.tsx | 46 | # Set profile_session_sample_rate to 1.0 to profile 100% | COMMENT |
| LOW⚡ | …c/app/gettingStartedDocs/python-fastapi/onboarding.tsx | 49 | # Set profile_lifecycle to "trace" to automatically | COMMENT |
| LOW⚡ | static/app/gettingStartedDocs/python/profiling.tsx | 24 | # Set traces_sample_rate to 1.0 to capture 100% | COMMENT |
| LOW⚡ | static/app/gettingStartedDocs/python/profiling.tsx | 27 | # Set profile_session_sample_rate to 1.0 to profile 100% | COMMENT |
| LOW⚡ | static/app/gettingStartedDocs/python/profiling.tsx | 30 | # Set profile_lifecycle to "trace" to automatically | COMMENT |
| LOW⚡ | static/app/gettingStartedDocs/python/profiling.tsx | 37 | # Set profile_session_sample_rate to 1.0 to profile 100% | COMMENT |
| LOW⚡ | static/app/gettingStartedDocs/python/profiling.tsx | 41 | # Set traces_sample_rate to 1.0 to capture 100% | COMMENT |
| LOW⚡ | static/app/gettingStartedDocs/python/profiling.tsx | 44 | # Set profiles_sample_rate to 1.0 to profile 100% | COMMENT |
| LOW⚡ | static/app/gettingStartedDocs/python/onboarding.tsx | 29 | # Set traces_sample_rate to 1.0 to capture 100% | COMMENT |
| 184 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tests/acceptance/test_scm_onboarding.py | 524 | # Step 2: Org Selection — fresh install, shows "Install GitHub App". | COMMENT |
| LOW | tests/acceptance/test_scm_onboarding.py | 504 | # Step 1: OAuth Login — the modal shows "Authorize GitHub". | COMMENT |
| LOW⚡ | tests/acceptance/test_organization_uptime.py | 31 | # Step 1: Start from empty uptime overview page | COMMENT |
| LOW⚡ | tests/acceptance/test_organization_uptime.py | 38 | # Step 2: Click "Add Uptime Monitor" button in empty state | COMMENT |
| LOW⚡ | tests/acceptance/test_organization_uptime.py | 44 | # Step 3: Fill out the uptime monitor form | COMMENT |
| LOW⚡ | tests/acceptance/test_organization_uptime.py | 56 | # Step 4: Submit the form using the manual approach from debug test | COMMENT |
| LOW⚡ | tests/acceptance/test_organization_uptime.py | 60 | # Step 5: Should navigate to uptime monitor details page | COMMENT |
| LOW⚡ | tests/acceptance/test_organization_uptime.py | 67 | # Step 6: Navigate back to uptime overview | COMMENT |
| LOW⚡ | tests/acceptance/test_organization_uptime.py | 70 | # Step 7: Verify the monitor is now shown in the overview list | COMMENT |
| LOW⚡ | tests/sentry/pipeline/test_pipeline.py | 405 | # Step 1: choose a thing | COMMENT |
| LOW⚡ | tests/sentry/pipeline/test_pipeline.py | 410 | # Step 2: confirm — this is the last step, so pipeline finishes | COMMENT |
| LOW⚡ | tests/sentry/pipeline/test_pipeline.py | 501 | # Step 1: choose a thing — binds "thing" to state | COMMENT |
| LOW⚡ | tests/sentry/spans/test_buffer.py | 1981 | # Step 2: Buffer flushes segment, captures score, acquires lock | COMMENT |
| LOW⚡ | tests/sentry/spans/test_buffer.py | 1987 | # Step 3: Simulate lock expiration by deleting it | COMMENT |
| LOW⚡ | tests/sentry/spans/test_buffer.py | 1990 | # Step 4: New spans arrive while "producing to Kafka" | COMMENT |
| LOW | tests/sentry/spans/test_buffer.py | 1953 | # Step 1: Create initial segment | COMMENT |
| LOW | tests/sentry/spans/test_buffer.py | 2009 | # Step 5: Buffer calls done_flush_segments with OLD captured score | COMMENT |
| LOW⚡ | tests/sentry/integrations/slack/test_unfurl.py | 1458 | # Step 1: URL matching | COMMENT |
| LOW⚡ | tests/sentry/integrations/slack/test_unfurl.py | 1468 | # Step 2: Run handler | COMMENT |
| LOW⚡ | tests/sentry/integrations/slack/test_unfurl.py | 1472 | # Step 3: Verify events-timeseries was called with correct args | COMMENT |
| LOW⚡ | tests/sentry/integrations/slack/test_unfurl.py | 1482 | # Step 4: Verify chartcuterie received correct data | COMMENT |
| LOW | tests/sentry/integrations/slack/test_unfurl.py | 1500 | # Step 5: Verify the unfurl result | COMMENT |
| LOW⚡ | tests/sentry/integrations/perforce/test_integration.py | 826 | # Step 1: Simulate installation with build_integration | COMMENT |
| LOW⚡ | tests/sentry/integrations/perforce/test_integration.py | 870 | # Step 2: Create integration (simulating ensure_integration) | COMMENT |
| LOW⚡ | tests/sentry/integrations/perforce/test_integration.py | 879 | # Step 3: Get installation and verify configuration retrieval | COMMENT |
| LOW | tests/sentry/integrations/perforce/test_integration.py | 924 | # Step 4: Test partial update (only change password) | COMMENT |
| LOW | tests/sentry/integrations/perforce/test_integration.py | 941 | # Step 5: Test multiple field update | COMMENT |
| LOW | tests/sentry/integrations/perforce/test_integration.py | 965 | # Step 6: Verify empty optional fields don't break anything | COMMENT |
| LOW⚡ | tests/sentry/api/helpers/test_group_index.py | 638 | # Step 2: Mark as unresolved | COMMENT |
| LOW⚡ | tests/sentry/api/helpers/test_group_index.py | 646 | # Step 3: GroupLink is deleted | COMMENT |
| LOW⚡ | tests/sentry/api/helpers/test_group_index.py | 651 | # Step 4: Manually resolve again | COMMENT |
| LOW | tests/sentry/api/helpers/test_group_index.py | 619 | # Step 1: Simulate resolving via commit by creating GroupLink | COMMENT |
| LOW | .agents/skills/sentry-security/SKILL.md | 25 | ## Step 1: Classify the Code | COMMENT |
| LOW | .agents/skills/sentry-security/SKILL.md | 41 | ## Step 2: Check for the Top 6 Vulnerability Classes | COMMENT |
| LOW | .agents/skills/sentry-security/SKILL.md | 129 | ## Step 3: Trace the Full Enforcement Chain | COMMENT |
| LOW | .agents/skills/sentry-security/SKILL.md | 156 | ## Step 4: Report Findings | COMMENT |
| LOW | .agents/skills/sentry-javascript-bugs/SKILL.md | 27 | ## Step 1: Classify the Code | COMMENT |
| LOW | .agents/skills/sentry-javascript-bugs/SKILL.md | 43 | ## Step 2: Check for Top Bug Patterns | COMMENT |
| LOW | .agents/skills/sentry-javascript-bugs/SKILL.md | 189 | ## Step 3: Report Findings | COMMENT |
| LOW | .agents/skills/notification-platform/SKILL.md | 24 | ## Step 1: Determine Your Operation | COMMENT |
| LOW | .agents/skills/notification-platform/SKILL.md | 34 | ## Step 2: Define the Notification Source | COMMENT |
| LOW | .agents/skills/notification-platform/SKILL.md | 62 | ## Step 3: Create the Notification Data | COMMENT |
| LOW | .agents/skills/notification-platform/SKILL.md | 88 | ## Step 4: Create the Notification Template | COMMENT |
| LOW | .agents/skills/notification-platform/SKILL.md | 159 | ## Step 5: Register Rollout and Send | COMMENT |
| LOW | .agents/skills/notification-platform/SKILL.md | 207 | ## Step 6: Add a Custom Renderer | COMMENT |
| LOW | .agents/skills/notification-platform/SKILL.md | 234 | ## Step 7: Add a New Provider | COMMENT |
| LOW | .agents/skills/notification-platform/SKILL.md | 248 | ## Step 8: Test | COMMENT |
| LOW | .agents/skills/notification-platform/SKILL.md | 303 | ## Step 9: Verify | COMMENT |
| LOW | .agents/skills/hybrid-cloud-test-gen/SKILL.md | 26 | ## Step 1: Identify Test Category | COMMENT |
| LOW | .agents/skills/hybrid-cloud-test-gen/SKILL.md | 39 | ## Step 2: Gather Context | COMMENT |
| LOW | .agents/skills/hybrid-cloud-test-gen/SKILL.md | 54 | ## Step 3: Generate RPC Service Tests | COMMENT |
| LOW | .agents/skills/hybrid-cloud-test-gen/SKILL.md | 74 | ## Step 4: Generate API Gateway Tests | COMMENT |
| LOW | .agents/skills/hybrid-cloud-test-gen/SKILL.md | 91 | ## Step 5: Generate Outbox Pattern Tests | COMMENT |
| LOW | .agents/skills/hybrid-cloud-test-gen/SKILL.md | 110 | ## Step 6: Generate Endpoint Silo Tests | COMMENT |
| LOW | .agents/skills/hybrid-cloud-test-gen/SKILL.md | 130 | ## Step 7: Validate | COMMENT |
| LOW | .agents/skills/hybrid-cloud-rpc/SKILL.md | 27 | ## Step 1: Determine Operation | COMMENT |
| LOW | .agents/skills/hybrid-cloud-rpc/SKILL.md | 38 | ## Step 2: Determine Silo Mode | COMMENT |
| LOW | .agents/skills/hybrid-cloud-rpc/SKILL.md | 51 | ## Step 3: Create a New Service | COMMENT |
| LOW | .agents/skills/hybrid-cloud-rpc/SKILL.md | 96 | ## Step 4: Add or Update Methods | COMMENT |
| LOW | .agents/skills/hybrid-cloud-rpc/SKILL.md | 187 | ## Step 5: Update Method Signatures | COMMENT |
| 97 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | warden.toml | 1 | # Warden Configuration | COMMENT |
| LOW | rspack.config.ts | 121 | // | COMMENT |
| LOW | …-refactor-tasks/conventions/no-derived-state.detect.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | …tor-tasks/conventions/no-deprecated-callsite.detect.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | devservices/config/relay-edge.yml | 1 | --- | COMMENT |
| LOW | devservices/config/relay-cell.yml | 1 | --- | COMMENT |
| LOW | tests/conftest.py | 21 | from django.db import connections | COMMENT |
| LOW | tests/js/sentry-test/selectEvent.tsx | 1 | // Based on https://github.com/romgain/react-select-event | COMMENT |
| LOW | tests/snuba/test_util.py | 41 | assert snuba.shrink_time_window(issues, year_ago) == naive_now - timedelta( | COMMENT |
| LOW | tests/snuba/search/test_backend.py | 2401 | self.make_query(search_filter_query="is:[unresolved, resolved]") | COMMENT |
| LOW | tests/snuba/search/test_backend.py | 2421 | # when querying by first release, the appropriate set of groups should be displayed: | COMMENT |
| LOW | …sts/sentry/releases/endpoints/test_project_releases.py | 281 | # response = self.client.get(url, format='json') | COMMENT |
| LOW | tests/sentry/tasks/test_relay.py | 41 | # This contraption helps in testing the usage of `transaction.on_commit` in | COMMENT |
| LOW | …s/sentry/core/endpoints/scim/test_scim_user_details.py | 641 | # member3.invite_status = InviteStatus.APPROVED.value # default val | COMMENT |
| LOW | tests/sentry/grouping/test_parameterization.py | 701 | real_parameterizer_regexes = parameterizer.compiled_regexes_by_name | COMMENT |
| LOW | tests/sentry/grouping/test_categorization.py | 241 | def _pre_scrub_event(data: dict[str, Any]) -> dict[str, Any]: | COMMENT |
| LOW | tests/sentry/grouping/enhancements/test_hints.py | 41 | # final_in_app: True or False | COMMENT |
| LOW | tests/sentry/lang/native/test_applecrashreport.py | 321 | 1 SwiftExample 0xf6cd4 @objc ViewController.onClickFatalError(AnyObject) -> ()""" | COMMENT |
| LOW | tests/sentry/seer/similarity/__init__.py | 1 | # This file is necessary because we have multiple test files named `test_utils.py`, which confuses | COMMENT |
| LOW | tests/sentry/seer/code_review/__init__.py | 1 | # This file is necessary because we have multiple test files named `test_utils.py`, which confuses | COMMENT |
| LOW | …dpoints/test_project_replay_recording_segment_index.py | 141 | # do not error it means these empty rows were not retured. | COMMENT |
| LOW | …ry/replays/endpoints/test_organization_replay_index.py | 1201 | "warning_ids": [], | COMMENT |
| LOW | …ry/replays/endpoints/test_organization_replay_index.py | 1221 | COMMENT | |
| LOW | …ts/sentry/event_manager/test_event_manager_grouping.py | 401 | def test_cache_invalidation_error_handling(self) -> None: | COMMENT |
| LOW | …/sentry/db/postgres/schema/safe_migrations/__init__.py | 1 | # Subset of tests taken from https://github.com/tbicr/django-pg-zero-downtime-migrations/tree/c029caac8d0cdaeef1d88870f0 | COMMENT |
| LOW | static/app/index.tsx | 1 | // This is the entry point of Sentry's frontend application. Want to | COMMENT |
| LOW | static/app/index.tsx | 21 | // a. The locale module will be initialized using `initializeLocale`. See this | COMMENT |
| LOW | static/app/index.tsx | 41 | // in the `window.__onSentryInit` array from outside of the app. This is | COMMENT |
| LOW | static/app/locale.tsx | 341 | */ | COMMENT |
| LOW | static/app/types/echarts.tsx | 101 | // incoming data value | COMMENT |
| LOW | static/app/utils/useHoverOverlay.tsx | 321 | COMMENT | |
| LOW | static/app/utils/oxfordizeArray.tsx | 1 | // Given a list of strings (probably nouns), join them into a single string | COMMENT |
| LOW | static/app/utils/discover/fields.tsx | 1001 | escaped = true; | COMMENT |
| LOW | …ic/app/utils/feedback/coaleseIssueStatsPeriodQuery.tsx | 21 | // for a while) they can trigger that specifically. | COMMENT |
| LOW | static/app/utils/search/fzf.tsx | 1 | // Port of the fzf v1 algorithm to typescript | COMMENT |
| LOW | static/app/utils/profiling/speedscope.tsx | 1 | // Port of some helper classes from speedscope, a lot of these have been changed to fit our usage and the port | COMMENT |
| LOW | static/app/utils/duration/closestIntervalToDuration.tsx | 41 | // Calculate the MIDPOINT value ranges to allow the interval to be chosen. | COMMENT |
| LOW | …tic/app/components/forms/fields/accessibility.spec.tsx | 21 | import {SelectField} from './selectField'; | COMMENT |
| LOW | …/app/components/core/slideOverPanel/slideOverPanel.tsx | 61 | // `isTransitioning` set to `false`. We render the children and pass | COMMENT |
| LOW | static/app/components/core/select/select.tsx | 541 | } = props; | COMMENT |
| LOW | …ents/searchQueryBuilder/hooks/useQueryBuilderState.tsx | 681 | return {...state, query: replaceQueryToken(state.query, token.value, newValue)}; | COMMENT |
| LOW | static/app/components/arithmeticBuilder/validator.tsx | 41 | if (!defined(token)) { | COMMENT |
| LOW | static/app/components/charts/chartZoomConfig.ts | 1 | export const CHART_ZOOM_MERGE_OPTIONS = { | COMMENT |
| LOW | static/app/components/replays/videoReplayer.tsx | 701 | // edge case where we have a gap between start of replay and first segment | COMMENT |
| LOW | static/app/components/replays/deserializeCanvasArgs.ts | 61 | // ...(await Promise.all(args.map(deserializeCanvasArg(imageMap, ctx, preload)))) | COMMENT |
| LOW | …components/profiling/flamegraph/flamegraphUIFrames.tsx | 221 | if (!configSpaceCursor) { | COMMENT |
| LOW | static/app/components/events/rrwebReplayer/index.tsx | 21 | try { | COMMENT |
| LOW | …nts/events/interfaces/crashContent/exception/utils.tsx | 21 | // [-a-zA-Z0-9@:%._\+~#=]{1,256}: Matches the domain name | COMMENT |
| LOW | static/app/data/platformProductInfo.generated.ts | 1 | // DO NOT EDIT — regenerate via `pnpm gen:platform-info`. | COMMENT |
| LOW | …egrationOrganizationLink/gitHubInstallationCallout.tsx | 21 | }; | COMMENT |
| LOW | …s/components/settingsBreadcrumb/breadcrumbDropdown.tsx | 81 | menuHasHover: boolean; | COMMENT |
| LOW | static/app/views/issueDetails/groupDetails.tsx | 361 | useEffect(() => { | COMMENT |
| LOW | static/app/views/explore/metrics/metricsHeatMap.tsx | 61 | COMMENT | |
| LOW | …c/app/views/explore/metrics/metricsTabSeerComboBox.tsx | 161 | COMMENT | |
| LOW | …/explore/releases/releaseBubbles/useReleaseBubbles.tsx | 161 | // | | | COMMENT |
| LOW | …releases/releaseBubbles/utils/createReleaseBuckets.tsx | 1 | import type {RawFlag} from 'sentry/components/featureFlags/utils'; | COMMENT |
| LOW | …releases/releaseBubbles/utils/createReleaseBuckets.tsx | 81 | } | COMMENT |
| LOW | …ic/app/views/explore/replays/detail/console/format.tsx | 1 | // This is based on https://github.com/browserify/node-util/blob/master/util.js | COMMENT |
| LOW | …boards/widgetBuilder/components/queryFilterBuilder.tsx | 61 | // Multiple filter conditions allow comparing different data slices as overlays. | COMMENT |
| LOW | …/timeSeriesWidget/formatters/formatTimeSeriesLabel.tsx | 41 | COMMENT | |
| 179 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …snuba/api/endpoints/test_organization_tagkey_values.py | 122 | # default test ignore count just use timestamp | COMMENT |
| LOW | tests/sentry/search/events/builder/test_metrics.py | 585 | # Less than a minute, no reason to work hard for such a small window, just use a minute | COMMENT |
| LOW | tests/sentry/search/events/builder/test_metrics.py | 1809 | # Less than a minute, no reason to work hard for such a small window, just use a minute | COMMENT |
| LOW | tests/sentry/search/events/builder/test_span_metrics.py | 134 | # Less than a minute, no reason to work hard for such a small window, just use a minute | COMMENT |
| LOW | …try/integrations/github_enterprise/test_integration.py | 893 | # Should not raise an exception, just return early | COMMENT |
| LOW | tests/sentry/integrations/github/test_integration.py | 1649 | # Should not raise an exception, just return early | COMMENT |
| LOW | tests/sentry/integrations/github/test_client.py | 931 | # Following requests should just add headers | COMMENT |
| MEDIUM⚡ | tests/sentry/users/api/endpoints/test_user_details.py | 250 | # Even if user is in an org, they can't elevate without SUPERUSER_ORG_ID configured | COMMENT |
| LOW | tests/sentry/event_manager/test_event_manager.py | 2010 | # the basic strategy is to simply use the description | COMMENT |
| MEDIUM | …nts/serializers/test_workflow_engine_data_condition.py | 276 | # create another comprehensive alert rule in the DB | COMMENT |
| LOW | tests/sentry/deletions/test_debugfiles.py | 16 | # What is this even testing? I could as well just call `.delete()` directly? | COMMENT |
| MEDIUM | …c/app/components/onboarding/useRecentCreatedProject.ts | 33 | // It uses useProjects() to leverage already loaded data while also fetching for updates | COMMENT |
| MEDIUM | static/app/gettingStartedDocs/ionic/index.tsx | 2 | // Consequently, they can utilize the same SDK documentation, specifically that of Capacitor. | COMMENT |
| MEDIUM | …rmance/newTraceDetails/traceState/tracePreferences.tsx | 136 | // We need a more robust way to validate the stored preferences. | COMMENT |
| MEDIUM | …nce/transactionSummary/transactionOverview/content.tsx | 105 | // NOTE: This is not a robust check for whether or not a transaction is a front end | COMMENT |
| LOW | .github/workflows/development-environment.yml | 67 | # technically we can just use --only-dev but more cache is nice | COMMENT |
| LOW | src/sentry/monitors/utils.py | 123 | # TODO(epurkhiser): We should probably just set this value as a | COMMENT |
| LOW | src/sentry/monitors/clock_tasks/check_missed.py | 137 | # If we simply set our mark_failed reference timestamp to the failing | COMMENT |
| LOW | src/sentry/options/store.py | 170 | # Key is within normal expiry window, so just return it | COMMENT |
| MEDIUM | src/sentry/tasks/symbolication.py | 332 | # burdened by aforementioned legacy concerns. | COMMENT |
| LOW | src/sentry/tasks/assemble.py | 508 | # In case there is not ArtifactBundle with a specific bundle_id, we just create it and return. | COMMENT |
| LOW | src/sentry/discover/arithmetic.py | 242 | # if remaining is a node lhs contains a factor so just return that | STRING |
| MEDIUM | src/sentry/core/endpoints/scim/utils.py | 115 | # The scim endpoints should only be used in conjunction with a SAML2 integration | COMMENT |
| LOW | src/sentry/tsdb/base.py | 254 | # If nothing actually matches the requested range, just return the | COMMENT |
| LOW | src/sentry/grouping/strategies/base.py | 204 | # obsolete enhancements version, in which case we just use the default enhancements for | COMMENT |
| LOW | src/sentry/grouping/fingerprinting/utils.py | 296 | # can remove `use_legacy_unknown_variable_handling` and just return the string. (At that | COMMENT |
| LOW | src/sentry/grouping/fingerprinting/utils.py | 362 | # can remove `use_legacy_unknown_variable_handling` and just return the value given by | COMMENT |
| LOW | src/sentry/utils/marketo_client.py | 19 | # just use the first error | COMMENT |
| LOW | src/sentry/utils/sdk.py | 197 | # If there's already a sampling decision, just use that | COMMENT |
| LOW | src/sentry/utils/sdk.py | 221 | # If there's already a sampling decision, just use that | COMMENT |
| LOW | src/sentry/utils/snuba.py | 225 | # We should be able to delete origin.transaction and just use transaction | COMMENT |
| LOW | src/sentry/utils/snuba.py | 1602 | # At leaf level, just return the aggregations from the first data row | COMMENT |
| LOW | src/sentry/utils/snuba.py | 1604 | # Special case, if there is only one aggregate, just return the raw value | COMMENT |
| LOW | src/sentry/utils/samples.py | 530 | # not the best but just set the exclusive time | COMMENT |
| LOW | src/sentry/utils/samples.py | 600 | # not the best but just set the exclusive time | COMMENT |
| LOW | src/sentry/utils/kvstore/bigtable.py | 175 | # at all, so we just return the data and hope for the best. It is | COMMENT |
| MEDIUM | src/sentry/preprod/tasks.py | 648 | # preprod_artifact. This isn't yet robust to: | COMMENT |
| MEDIUM | src/sentry/preprod/tasks.py | 773 | # preprod_artifact. This isn't yet robust to: | COMMENT |
| MEDIUM | src/sentry/models/statistical_detectors.py | 55 | # be checked in conjunction with the issue group status to determine | COMMENT |
| LOW | src/sentry/explore/translation/discover_translation.py | 69 | # If it's not in the selected fields, just pass it down as is | COMMENT |
| MEDIUM | src/sentry/objectstore/__init__.py | 219 | # TODO(lcian): Find a more robust way to do this. Here we assume that the caller is Symbolicator, | COMMENT |
| LOW | src/sentry/search/eap/occurrences/search_executor.py | 48 | # TODO: instead of translating this key, maybe we should just set the public alias for this attribute to "error.main_thr | COMMENT |
| LOW | src/sentry/search/snuba/executors.py | 1223 | # (ignored by score_fn) and just use the result to narrow candidates to those | COMMENT |
| MEDIUM | src/sentry/search/snuba/executors.py | 202 | """This class serves as a template for Query Executors. | STRING |
| LOW⚡ | src/sentry/search/events/filter.py | 687 | # mypy complains if you just use the literal; int isn't an Any, somehow? | COMMENT |
| LOW | src/sentry/search/events/filter.py | 699 | # together. Otherwise just return the raw condition, so that it can be | COMMENT |
| MEDIUM | src/sentry/search/events/datasets/metrics.py | 91 | """While the final functions in clickhouse must have their -Merge combinators in order to function, we don't | STRING |
| MEDIUM | src/sentry/search/events/datasets/spans_metrics.py | 87 | """While the final functions in clickhouse must have their -Merge combinators in order to function, we don't | STRING |
| LOW | src/sentry/search/events/builder/utils.py | 67 | # Its over 30d, just use the daily granularity | COMMENT |
| LOW | …ry_metrics/querying/data/transformation/metrics_api.py | 80 | # Since we don't support the array aggregate value, and we return the first element, we just return the type of | COMMENT |
| LOW | src/sentry/integrations/discord/webhooks/base.py | 100 | # just return 200. | COMMENT |
| LOW | src/sentry/integrations/vercel/integration.py | 242 | # once per user/team. Eventually we should be able to just use | COMMENT |
| LOW | src/sentry/integrations/jira/integration.py | 448 | # possible to query that with the API). So instead we just use the first | STRING |
| LOW | src/sentry/integrations/jira/integration.py | 750 | # still no issue type? just use the first one. | STRING |
| LOW | src/sentry/integrations/github/webhook.py | 222 | # subclasses can now just add their function to the WEBHOOK_EVENT_PROCESSORS tuple | COMMENT |
| MEDIUM | src/sentry/integrations/slack/webhooks/action.py | 1049 | # keep track of the response_url in the callback_id. Definitely hacky, | COMMENT |
| LOW | src/sentry/integrations/jira_server/integration.py | 540 | # possible to query that with the API). So instead we just use the first | STRING |
| LOW | src/sentry/ratelimits/utils.py | 137 | # otherwise we just use what's default for the group | COMMENT |
| MEDIUM | src/sentry/seer/agent/tools.py | 2768 | # Query both error events and issue platform occurrences for a comprehensive baseline. | COMMENT |
| LOW | src/sentry/replays/usecases/summarize.py | 549 | # If the replay is missing here just return an empty response. | COMMENT |
| 39 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/snuba/search/test_backend.py | 56 | CODE | |
| LOW | …ba/api/endpoints/test_organization_trace_item_stats.py | 44 | CODE | |
| LOW | tests/sentry/middleware/test_access_log_middleware.py | 50 | CODE | |
| LOW | tests/sentry/auth/test_helper.py | 1144 | CODE | |
| LOW | tests/sentry/auth/test_superuser.py | 62 | CODE | |
| LOW | …sts/sentry/preprod/test_build_distribution_webhooks.py | 48 | CODE | |
| LOW | tests/sentry/preprod/vcs/pr_comments/test_tasks.py | 37 | CODE | |
| LOW | tests/sentry/preprod/size_analysis/test_webhooks.py | 65 | CODE | |
| LOW | tests/sentry/integrations/cursor/test_webhook.py | 54 | CODE | |
| LOW | …entry/integrations/msteams/test_action_state_change.py | 76 | CODE | |
| LOW | tests/sentry/integrations/slack/test_message_builder.py | 55 | CODE | |
| LOW | …sentry/integrations/slack/webhooks/actions/__init__.py | 120 | CODE | |
| LOW | …i/endpoints/test_organization_ai_conversations_base.py | 20 | CODE | |
| LOW | tests/sentry/api/endpoints/test_project_rules.py | 371 | CODE | |
| LOW | tests/sentry/api/endpoints/test_rpc.py | 46 | CODE | |
| LOW | tests/sentry/api/bases/test_organization.py | 833 | CODE | |
| LOW | tests/sentry/pr_metrics/test_webhooks.py | 787 | CODE | |
| LOW | tests/sentry/pr_metrics/test_webhooks.py | 1711 | CODE | |
| LOW | tests/sentry/pr_metrics/test_webhooks.py | 1742 | CODE | |
| LOW | tests/sentry/pr_metrics/test_attribution.py | 193 | CODE | |
| LOW | …ts/sentry/issues/endpoints/test_group_pull_requests.py | 40 | CODE | |
| LOW | …ry/notifications/platform/slack/renderers/test_seer.py | 31 | CODE | |
| LOW | …billing/platform/services/usage/test_outcomes_query.py | 32 | CODE | |
| LOW | src/bitfield/models.py | 122 | CODE | |
| LOW | src/sentry/http.py | 65 | CODE | |
| LOW | src/sentry/event_manager.py | 348 | CODE | |
| LOW | src/sentry/event_manager.py | 430 | CODE | |
| LOW | src/sentry/shared_integrations/client/base.py | 238 | CODE | |
| LOW | src/sentry/shared_integrations/client/base.py | 258 | CODE | |
| LOW | src/sentry/shared_integrations/client/base.py | 277 | CODE | |
| LOW | …c/sentry/organizations/services/organization/serial.py | 118 | CODE | |
| LOW | src/sentry/middleware/integrations/parsers/github.py | 148 | CODE | |
| LOW | src/sentry/eventstream/eap.py | 54 | CODE | |
| LOW | src/sentry/tasks/base.py | 34 | CODE | |
| LOW | src/sentry/tasks/summaries/utils.py | 649 | CODE | |
| LOW | src/sentry/tsdb/snuba.py | 254 | CODE | |
| LOW | src/sentry/tsdb/snuba.py | 326 | CODE | |
| LOW | src/sentry/tsdb/snuba.py | 490 | CODE | |
| LOW | src/sentry/tsdb/snuba.py | 727 | CODE | |
| LOW | src/sentry/tsdb/snuba.py | 785 | CODE | |
| LOW | src/sentry/tsdb/snuba.py | 859 | CODE | |
| LOW | src/sentry/tsdb/redis.py | 302 | CODE | |
| LOW | src/sentry/tsdb/redis.py | 522 | CODE | |
| LOW | src/sentry/tsdb/dummy.py | 28 | CODE | |
| LOW | src/sentry/tsdb/dummy.py | 67 | CODE | |
| LOW | src/sentry/tsdb/base.py | 413 | CODE | |
| LOW | src/sentry/tsdb/base.py | 442 | CODE | |
| LOW | src/sentry/tsdb/base.py | 475 | CODE | |
| LOW | src/sentry/tsdb/base.py | 493 | CODE | |
| LOW | src/sentry/tsdb/base.py | 597 | CODE | |
| LOW | src/sentry/web/frontend/pipeline_advancer.py | 176 | CODE | |
| LOW | src/sentry/quotas/base.py | 174 | CODE | |
| LOW | src/sentry/utils/query.py | 117 | CODE | |
| LOW | src/sentry/utils/imports.py | 30 | CODE | |
| LOW | src/sentry/utils/snuba.py | 1001 | CODE | |
| LOW | src/sentry/utils/snuba.py | 1529 | CODE | |
| LOW | src/sentry/utils/snuba.py | 1787 | CODE | |
| LOW | src/sentry/utils/snuba.py | 901 | CODE | |
| LOW | src/sentry/utils/samples.py | 108 | CODE | |
| LOW | src/sentry/utils/samples.py | 446 | CODE | |
| 128 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tests/acceptance/test_scm_onboarding.py | 524 | # Step 2: Org Selection — fresh install, shows "Install GitHub App". | COMMENT |
| LOW | tests/acceptance/test_scm_onboarding.py | 504 | # Step 1: OAuth Login — the modal shows "Authorize GitHub". | COMMENT |
| LOW⚡ | tests/acceptance/test_organization_uptime.py | 31 | # Step 1: Start from empty uptime overview page | COMMENT |
| LOW⚡ | tests/acceptance/test_organization_uptime.py | 38 | # Step 2: Click "Add Uptime Monitor" button in empty state | COMMENT |
| LOW⚡ | tests/acceptance/test_organization_uptime.py | 44 | # Step 3: Fill out the uptime monitor form | COMMENT |
| LOW⚡ | tests/acceptance/test_organization_uptime.py | 56 | # Step 4: Submit the form using the manual approach from debug test | COMMENT |
| LOW⚡ | tests/acceptance/test_organization_uptime.py | 60 | # Step 5: Should navigate to uptime monitor details page | COMMENT |
| LOW⚡ | tests/acceptance/test_organization_uptime.py | 67 | # Step 6: Navigate back to uptime overview | COMMENT |
| LOW⚡ | tests/acceptance/test_organization_uptime.py | 70 | # Step 7: Verify the monitor is now shown in the overview list | COMMENT |
| LOW⚡ | tests/sentry/pipeline/test_pipeline.py | 405 | # Step 1: choose a thing | COMMENT |
| LOW⚡ | tests/sentry/pipeline/test_pipeline.py | 410 | # Step 2: confirm — this is the last step, so pipeline finishes | COMMENT |
| LOW⚡ | tests/sentry/pipeline/test_pipeline.py | 501 | # Step 1: choose a thing — binds "thing" to state | COMMENT |
| LOW⚡ | tests/sentry/spans/test_buffer.py | 1981 | # Step 2: Buffer flushes segment, captures score, acquires lock | COMMENT |
| LOW⚡ | tests/sentry/spans/test_buffer.py | 1987 | # Step 3: Simulate lock expiration by deleting it | COMMENT |
| LOW⚡ | tests/sentry/spans/test_buffer.py | 1990 | # Step 4: New spans arrive while "producing to Kafka" | COMMENT |
| LOW | tests/sentry/spans/test_buffer.py | 1953 | # Step 1: Create initial segment | COMMENT |
| LOW | tests/sentry/spans/test_buffer.py | 2009 | # Step 5: Buffer calls done_flush_segments with OLD captured score | COMMENT |
| LOW⚡ | tests/sentry/integrations/slack/test_unfurl.py | 1458 | # Step 1: URL matching | COMMENT |
| LOW⚡ | tests/sentry/integrations/slack/test_unfurl.py | 1468 | # Step 2: Run handler | COMMENT |
| LOW⚡ | tests/sentry/integrations/slack/test_unfurl.py | 1472 | # Step 3: Verify events-timeseries was called with correct args | COMMENT |
| LOW⚡ | tests/sentry/integrations/slack/test_unfurl.py | 1482 | # Step 4: Verify chartcuterie received correct data | COMMENT |
| LOW | tests/sentry/integrations/slack/test_unfurl.py | 1500 | # Step 5: Verify the unfurl result | COMMENT |
| LOW⚡ | tests/sentry/integrations/perforce/test_integration.py | 826 | # Step 1: Simulate installation with build_integration | COMMENT |
| LOW⚡ | tests/sentry/integrations/perforce/test_integration.py | 870 | # Step 2: Create integration (simulating ensure_integration) | COMMENT |
| LOW⚡ | tests/sentry/integrations/perforce/test_integration.py | 879 | # Step 3: Get installation and verify configuration retrieval | COMMENT |
| LOW | tests/sentry/integrations/perforce/test_integration.py | 924 | # Step 4: Test partial update (only change password) | COMMENT |
| LOW | tests/sentry/integrations/perforce/test_integration.py | 941 | # Step 5: Test multiple field update | COMMENT |
| LOW | tests/sentry/integrations/perforce/test_integration.py | 965 | # Step 6: Verify empty optional fields don't break anything | COMMENT |
| LOW⚡ | tests/sentry/api/helpers/test_group_index.py | 638 | # Step 2: Mark as unresolved | COMMENT |
| LOW⚡ | tests/sentry/api/helpers/test_group_index.py | 646 | # Step 3: GroupLink is deleted | COMMENT |
| LOW⚡ | tests/sentry/api/helpers/test_group_index.py | 651 | # Step 4: Manually resolve again | COMMENT |
| LOW | tests/sentry/api/helpers/test_group_index.py | 619 | # Step 1: Simulate resolving via commit by creating GroupLink | COMMENT |
| LOW | static/app/utils/profiling/differentialFlamegraph.tsx | 182 | // In case the current node has no children, we need to check if the | COMMENT |
| LOW⚡ | static/app/utils/string/trimCommonAffixes.tsx | 164 | // Step 1: character-level common prefix/suffix lengths | COMMENT |
| LOW⚡ | static/app/utils/string/trimCommonAffixes.tsx | 169 | // Step 2: snap to separator boundaries (may reduce affix lengths) | COMMENT |
| LOW⚡ | static/app/utils/string/trimCommonAffixes.tsx | 176 | // Step 3: drop affixes that are too short to justify an ellipsis | COMMENT |
| LOW⚡ | static/app/utils/string/trimCommonAffixes.tsx | 184 | // Step 4: strip affixes and insert ellipses | COMMENT |
| LOW | …app/components/pipeline/integrationAwsLambda/index.tsx | 29 | // Step 1: Project Select | COMMENT |
| LOW | …app/components/pipeline/integrationAwsLambda/index.tsx | 112 | // Step 2: CloudFormation | COMMENT |
| LOW | …app/components/pipeline/integrationAwsLambda/index.tsx | 301 | // Step 3: Instrumentation (function select + setup) | COMMENT |
| LOW⚡ | static/app/views/projectInstall/createProject.spec.tsx | 315 | // Step 1: Mount WITHOUT query params (simulates the browser POP navigation) | COMMENT |
| LOW⚡ | static/app/views/projectInstall/createProject.spec.tsx | 325 | // Step 2: Navigate WITH query params (simulates router.replace) | COMMENT |
| LOW⚡ | static/app/views/projectInstall/createProject.spec.tsx | 333 | // Step 3: Click a different platform | COMMENT |
| LOW⚡ | …atic/app/views/seerExplorer/hooks/useAsciiSnapshot.tsx | 898 | // Step 1: Strip trailing spaces from each row. The grid is initialized as | COMMENT |
| LOW⚡ | …atic/app/views/seerExplorer/hooks/useAsciiSnapshot.tsx | 902 | // Step 2: Remove the common leading whitespace shared by every non-empty | COMMENT |
| LOW⚡ | …atic/app/views/seerExplorer/hooks/useAsciiSnapshot.tsx | 912 | // Step 3: Drop all blank rows | COMMENT |
| LOW | static/gsApp/utils/billing.tsx | 896 | * has any sibling categories also tallied for billing. If so, we need to check if the data category | COMMENT |
| LOW | src/sentry/reprocessing2.py | 228 | # Step 1: Copy attachments into attachment cache. Note that we can only | COMMENT |
| LOW | src/sentry/reprocessing2.py | 253 | # Step 2: Fix up the event payload for reprocessing and put it in event | COMMENT |
| LOW | …try/core/endpoints/organization_member_team_details.py | 174 | # When open membership is disabled, we need to check if the token has elevated permissions | COMMENT |
| LOW⚡ | src/sentry/seer/agent/client.py | 247 | # Step 1: Generate root cause artifact | STRING |
| LOW⚡ | src/sentry/seer/agent/client.py | 256 | # Step 2: Continue to generate solution (preserves root_cause) | STRING |
| LOW | src/sentry/seer/agent/index_data.py | 152 | # Step 1: Get a random trace ID for the transaction | COMMENT |
| LOW | src/sentry/seer/agent/index_data.py | 182 | # Step 2: Get all spans in the chosen trace | COMMENT |
| LOW | src/sentry/seer/agent/index_data.py | 201 | # Step 3: Build span objects | COMMENT |
| LOW | src/sentry/seer/agent/index_data.py | 458 | # Step 1: Search for issues using transaction filter | COMMENT |
| LOW | src/sentry/seer/agent/index_data.py | 484 | # Step 2: For each issue, get the recommended event and serialize it | COMMENT |
| LOW | src/sentry/replays/lib/new_query/fields.py | 107 | # We need to check if the value is a scalar to determine the path we should follow. This | COMMENT |
| LOW | src/sentry/api/endpoints/organization_events.py | 347 | # Widget has not split the discover dataset yet, so we need to check if there are errors etc. | COMMENT |
| LOW | src/sentry/api/endpoints/organization_events_stats.py | 421 | # Widget has not split the discover dataset yet, so we need to check if there are errors etc. | COMMENT |
| 20 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tools/api_urls_to_typescript.py | 42 | Convert a regexp string to a route-style string. Handles: - Stripping ^ and $ from start/end - Convert | STRING |
| HIGH | src/sentry/tasks/ai_agent_monitoring.py | 53 | Create a glob version of a model name by adding a wildcard prefix. This handles cases where models have random | STRING |
| HIGH | src/sentry/preprod/models.py | 369 | Batch lookup base artifacts for a list of head artifacts. Finds base artifacts by matching (app_id, ar | STRING |
| HIGH | src/sentry/preprod/artifact_search.py | 205 | Create a queryset filtered by the given query string. This parses the query string and applies all search filt | STRING |
| HIGH | src/sentry/preprod/artifact_search.py | 247 | Check if a given PreprodArtifact instance matches the query string. This combines queryset_for_query() and art | STRING |
| HIGH | src/sentry/models/apitoken.py | 366 | Create an ApiToken from an ApiGrant with full OAuth2 validation. This method performs comprehensive validation | STRING |
| HIGH | src/sentry/models/apidevicecode.py | 185 | Create a new device code with retry logic for user code collisions. Since user codes have ~34 bits of | STRING |
| HIGH | src/sentry/search/eap/trace_metrics/validator.py | 18 | Extract trace metric information from an aggregate string using SearchResolver. Args: aggregate: The a | STRING |
| HIGH | src/sentry/integrations/perforce/client.py | 425 | Get user information from Perforce. Uses p4 user command to fetch user details including email and ful | STRING |
| HIGH | src/sentry/integrations/perforce/client.py | 503 | Get changelists for a depot path. Uses p4 changes command to list changelists. API docs: https | STRING |
| HIGH | src/sentry/integrations/perforce/client.py | 674 | Get file contents from Perforce depot using ``p4 print``. API docs: https://www.perforce.com/manuals/c | STRING |
| HIGH | src/sentry/integrations/perforce/integration.py | 244 | Check if a file exists in the Perforce depot and return the URL. Uses the client's check_file method t | STRING |
| HIGH | src/sentry/integrations/perforce/integration.py | 658 | Build integration data from installation state. Each organization gets its own private Perforce integr | STRING |
| HIGH | src/sentry/integrations/perforce/repository.py | 35 | Get Perforce client from repository. Args: repo: Repository instance Returns: | STRING |
| HIGH | src/sentry/seer/assisted_query/traces_tools.py | 111 | Get attribute names for trace items by calling the public API endpoint. This ensures all queryable built-in fi | STRING |
| HIGH | src/sentry/seer/agent/client.py | 445 | Start a new Seer Agent session. Args: prompt: The initial task/query for the agent | STRING |
| HIGH | src/sentry/seer/agent/client.py | 697 | Continue an existing Seer Agent session. This allows you to add follow-up queries to an ongoing conversation. | STRING |
| HIGH | src/sentry/seer/agent/client.py | 820 | Get the status/result of a Seer Agent session. Args: run_id: The run ID returned from star | STRING |
| HIGH | src/sentry/seer/agent/client.py | 892 | Get a list of Seer Agent runs for the organization with optional filters. Args: category_k | STRING |
| HIGH | src/sentry/seer/agent/client.py | 968 | Push code changes to PR(s) and wait for completion. Creates new PRs or updates existing ones with curr | STRING |
| HIGH | src/sentry/seer/agent/tools.py | 2452 | Make a request to the EAP GetTrace endpoint to get all attributes for a given trace and item type. Includes a s | STRING |
| HIGH | src/sentry/seer/agent/coding_agent_handoff.py | 83 | Launch coding agents for an agent run. Args: organization: The organization integration_id: Th | STRING |
| HIGH | src/sentry/seer/code_review/utils.py | 100 | Make a request to the Seer API and return the response data. Args: path: The path to the Seer API | STRING |
| HIGH | src/sentry/profiles/flamegraph.py | 659 | Splits a datetime range into exponentially increasing chunks, yielded by a generator. The duration of each chu | STRING |
| HIGH | src/sentry/uptime/endpoints/utils.py | 22 | Authorize the detector ids and return their corresponding subscription ids. For uptime detectors, we need to m | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pyproject.toml | 277 | # note: When updating the traceback format, make sure to update .github/pytest.json | COMMENT |
| LOW | …ba/api/endpoints/test_organization_events_histogram.py | 936 | # make sure to query a measurement that does not exist | COMMENT |
| LOW | …ba/api/endpoints/test_organization_events_histogram.py | 964 | # make sure to query a measurement that does not exist | COMMENT |
| LOW⚡ | tests/snuba/api/endpoints/test_organization_events.py | 5021 | # make sure to escape the asterisk so it's not treated as a wildcard | COMMENT |
| LOW | …/snuba/api/endpoints/test_organization_events_stats.py | 1435 | # make sure to query the project with 0 events | COMMENT |
| LOW | …/snuba/api/endpoints/test_organization_events_stats.py | 1460 | # make sure to query the project with 0 events | COMMENT |
| LOW | …/snuba/api/endpoints/test_organization_events_stats.py | 1485 | # make sure to query the project with 0 events | COMMENT |
| LOW | …ndpoints/test_organization_events_spans_performance.py | 973 | # make sure to return 1 extra result to indicate that there is a next page | COMMENT |
| LOW | …ndpoints/test_organization_events_spans_performance.py | 1005 | # make sure to return 1 extra result to indicate that there is a next page | COMMENT |
| LOW | …ba/api/endpoints/test_organization_events_stats_mep.py | 716 | # make sure to query the project with 0 events | COMMENT |
| LOW | …ba/api/endpoints/test_organization_events_stats_mep.py | 748 | # make sure to query the project with 0 events | COMMENT |
| LOW | …ba/api/endpoints/test_organization_events_stats_mep.py | 777 | # make sure to query the project with 0 events | COMMENT |
| LOW | tests/sentry/snuba/test_transactions.py | 2820 | # make sure to opt in to gain access to the function | COMMENT |
| LOW | tests/sentry/snuba/test_discover_query.py | 2988 | # make sure to opt in to gain access to the function | COMMENT |
| LOW | static/app/utils/fields/index.ts | 10 | // Don't forget to update https://docs.sentry.io/product/sentry-basics/search/searchable-properties/ for any changes mad | COMMENT |
| LOW | …vents/interfaces/crashContent/exception/utils.spec.tsx | 105 | const textWithHtml = `Check out this link: <a href="${url}">${url}</a> & don't forget to visit us!`; | CODE |
| MEDIUM | static/app/gettingStartedDocs/dotnet/onboarding.tsx | 47 | // We enable it here for demonstration purposes when first trying Sentry. | COMMENT |
| MEDIUM | static/app/gettingStartedDocs/powershell/onboarding.tsx | 18 | # We enable it here for demonstration purposes when first trying Sentry. | COMMENT |
| MEDIUM | …SeriesWidget/timeSeriesWidgetVisualization.stories.tsx | 184 | and <code>Bars</code> most of the time. Here's a simple example: | CODE |
| LOW | src/sentry/tasks/statistical_detectors.py | 123 | # make sure to consume the generator | COMMENT |
| LOW | src/sentry/tasks/statistical_detectors.py | 153 | # make sure to dispatch a task to handle the remaining projects | COMMENT |
| LOW | src/sentry/tasks/statistical_detectors.py | 193 | # make sure to dispatch a task to handle the remaining projects | COMMENT |
| LOW | src/sentry/spans/grouping/strategy/base.py | 48 | # make sure to get the group id for the transaction root span | COMMENT |
| LOW | src/sentry/runner/commands/exec.py | 5 | # If this changes, make sure to also update in the `__doc__` | COMMENT |
| LOW | src/sentry/ingest/consumer/processors.py | 396 | # If you want to remove this make sure to have triaged all errors in Sentry | COMMENT |
| LOW | src/sentry/utils/samples.py | 121 | # NOTE: Before editing this data, make sure you understand the context | COMMENT |
| LOW | src/sentry/utils/platform_categories.py | 4 | # When changing this file, make sure to keep sentry/static/app/data/platformCategories.tsx in sync. | COMMENT |
| LOW | src/sentry/utils/platform_categories.py | 29 | # When changing this file, make sure to keep sentry/static/app/data/platformCategories.tsx in sync. | COMMENT |
| LOW | src/sentry/utils/platform_categories.py | 53 | # When changing this file, make sure to keep sentry/static/app/data/platformCategories.tsx in sync. | COMMENT |
| LOW | src/sentry/utils/platform_categories.py | 124 | # When changing this file, make sure to keep sentry/static/app/data/platformCategories.tsx in sync. | COMMENT |
| LOW | src/sentry/utils/platform_categories.py | 140 | # When changing this file, make sure to keep sentry/static/app/data/platformCategories.tsx in sync. | COMMENT |
| LOW | src/sentry/utils/platform_categories.py | 188 | # When changing this file, make sure to keep sentry/static/app/data/platformCategories.tsx in sync. | COMMENT |
| MEDIUM⚡ | src/sentry/receivers/outbox/control.py | 41 | integration # Currently we do not sync any other integration changes, but if we did, you can use this variable. | CODE |
| MEDIUM⚡ | src/sentry/receivers/outbox/control.py | 108 | api_application # Currently we do not sync any other api application changes, but if we did, you can use this varia | CODE |
| LOW | src/sentry/search/eap/resolver.py | 1167 | # make sure to remove surrounding quotes if it's a tag | COMMENT |
| LOW | src/sentry/search/events/fields.py | 630 | # to make sure to nest it so it doesn't get treated | COMMENT |
| LOW | src/sentry/search/events/fields.py | 1048 | # make sure to map the allowed columns to their snuba names | COMMENT |
| LOW | src/sentry/search/events/fields.py | 1406 | # make sure to validate the argument count first to | COMMENT |
| LOW | src/sentry/search/events/fields.py | 2241 | # make sure to map the allowed columns to their snuba names | COMMENT |
| LOW⚡ | src/sentry/search/events/datasets/profile_functions.py | 192 | # When removing this, make sure to update the test helper to | COMMENT |
| LOW | src/sentry/search/events/datasets/profile_functions.py | 263 | # The worst may collide with one of the examples, so make sure to filter it out. | COMMENT |
| LOW | src/sentry/search/events/datasets/profile_functions.py | 314 | # The worst may collide with one of the examples, so make sure to filter it out. | COMMENT |
| LOW | src/sentry/search/events/builder/discover.py | 519 | # make sure to bound the bins to get the desired range of results | COMMENT |
| LOW | src/sentry/search/events/builder/base.py | 1151 | # make sure to alias the expression appropriately so we get back | COMMENT |
| LOW | src/sentry/integrations/jira_server/urls.py | 6 | # If updating/adding URLs here, make sure to update the JiraServerRequestParser as well | COMMENT |
| MEDIUM | src/sentry/data_export/tasks.py | 332 | # The API response to export the data contains the ID which you can use | COMMENT |
| LOW | src/sentry/data_export/endpoints/data_export.py | 130 | # make sure to fix the export start/end times to ensure consistent results | COMMENT |
| LOW | src/sentry/data_export/processors/discover.py | 39 | # make sure to only include environment if any are given | COMMENT |
| MEDIUM | src/sentry/api/utils.py | 285 | # If you can use the wider more correct type, please do. | COMMENT |
| LOW | …api/endpoints/organization_events_spans_performance.py | 745 | # the transaction itself is a span as well, so make sure to check it | COMMENT |
| LOW | src/sentry/api/endpoints/organization_traces.py | 460 | # So make sure to handle both in case something changes. | COMMENT |
| LOW | src/sentry/api/endpoints/project_profiling_profile.py | 136 | # make sure to remove the version from the metadata | COMMENT |
| LOW | src/sentry/templates/sentry/emails/member-invite.html | 17 | <p>Oh, and don't forget to try Seer, your new AI debugging agent. It'll automatically pinpoint root causes, suggest | CODE |
| LOW | src/sentry/snuba/metrics_performance.py | 675 | # make sure to adjust for the precision if necessary | COMMENT |
| LOW | src/sentry/snuba/discover.py | 1149 | # make sure to adjust for the precision if necessary | COMMENT |
| LOW | src/sentry/snuba/rpc_dataset_common.py | 269 | # if there are additional conditions to be added, make sure to merge them with the | COMMENT |
| LOW | src/sentry/backup/services/import_export/impl.py | 322 | # We wrote at least one model, so make sure to write an appropriate `ImportChunk` | COMMENT |
| MEDIUM | src/sentry/issues/derived/features.py | 13 | # Number of times this issue has been viewed. Not important, mostly here for demonstration purposes. | COMMENT |
| MEDIUM | src/sentry/issues/models/groupderiveddata.py | 42 | # This is here just for demonstration purposes. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | static/app/components/stackTrace/stackTrace.stories.tsx | 139 | [461, ' return None'], | CODE |
| HIGH | …atic/app/gettingStartedDocs/python/agentMonitoring.tsx | 349 | print(result.final_output) | CODE |
| HIGH | …atic/app/gettingStartedDocs/python/agentMonitoring.tsx | 375 | print(response.choices[0].message.content) | CODE |
| HIGH | …atic/app/gettingStartedDocs/python/agentMonitoring.tsx | 404 | print(message.content) | CODE |
| HIGH | …atic/app/gettingStartedDocs/python/agentMonitoring.tsx | 439 | print(result) | CODE |
| HIGH | …atic/app/gettingStartedDocs/python/agentMonitoring.tsx | 474 | print(result) | CODE |
| HIGH | …atic/app/gettingStartedDocs/python/agentMonitoring.tsx | 499 | print(response.choices[0].message.content) | CODE |
| HIGH | …atic/app/gettingStartedDocs/python/agentMonitoring.tsx | 526 | print(response) | CODE |
| HIGH | …atic/app/gettingStartedDocs/python/agentMonitoring.tsx | 552 | print(result.output) | CODE |
| HIGH | static/app/gettingStartedDocs/godot/logs.tsx | 30 | print("This info message will be sent to Sentry") | CODE |
| HIGH | …ews/insights/crons/components/upsertPlatformGuides.tsx | 414 | print('My scheduled task...')`; | CODE |
| HIGH | …iews/insights/crons/components/manualCheckInGuides.tsx | 40 | print(msg)`; | CODE |
| HIGH | …iews/insights/crons/components/manualCheckInGuides.tsx | 76 | print(msg) | CODE |
| HIGH | …dDetails/main/insights/minifyLocalizedStringsModal.tsx | 37 | print(f"Minifying {path}") | CODE |
| HIGH | …/performance/newTraceDetails/traceModels/traceTree.tsx | 1508 | print() { | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …tions/gitlab/tasks/test_update_all_project_webhooks.py | 184 | # Verify SLO metrics were recorded - orchestration task succeeds | COMMENT |
| MEDIUM | …ry/api/endpoints/test_organization_events_trends_v2.py | 285 | # checks that second transaction wasn't sent to the trends microservice | COMMENT |
| MEDIUM | src/sentry/options/defaults.py | 958 | # Enable sending the flag to the microservice to tell it to purposefully take longer than our | COMMENT |
| MEDIUM | src/sentry/options/defaults.py | 966 | # Enable sending the flag to the microservice to tell it to purposefully send back an error, to see | COMMENT |
| MEDIUM | src/sentry/preprod/snapshots/tasks.py | 827 | # A PROCESSING row whose orchestration never set chunks_total is stuck; reclaim | COMMENT |
| MEDIUM | src/sentry/preprod/snapshots/models.py | 95 | # NULL means orchestration did not finish; also the poll's done-counting denominator. | COMMENT |
| MEDIUM | …feedback/endpoints/organization_feedback_categories.py | 231 | # If the LLM hallucinates primary label(s), log it but still generate categories | COMMENT |
| MEDIUM | …/sentry/api/endpoints/organization_events_trends_v2.py | 271 | # list of requests to send to microservice async | COMMENT |
| MEDIUM | …/sentry/api/endpoints/organization_events_trends_v2.py | 281 | # send the data to microservice | COMMENT |
| MEDIUM⚡ | src/sentry/conf/server.py | 791 | # Shared secret used to sign cross-region RPC requests from the seer microservice. | COMMENT |
| MEDIUM⚡ | src/sentry/conf/server.py | 793 | # Shared secret used to sign cross-region RPC requests to the seer microservice. | COMMENT |
| MEDIUM⚡ | src/sentry/conf/server.py | 803 | # Shared secret used to sign cross-region RPC requests from the launchpad microservice. | COMMENT |
| MEDIUM | src/sentry/uptime/seer_assertions.py | 24 | # exceeding the model's context window. | COMMENT |
| MEDIUM | …sentry/statistical_detectors/issue_platform_adapter.py | 27 | # TODO: fix this in the breakpoint microservice and in trends v2 | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …ules/uptime/assertionSuggestionsDrawerContent.spec.tsx | 172 | 'These suggestions are generated by AI based on the HTTP response. Review each suggestion before applying.' | CODE |
| HIGH | …rts/rules/uptime/assertionSuggestionsDrawerContent.tsx | 77 | 'These suggestions are generated by AI based on the HTTP response. Review each suggestion before applying. | CODE |
| HIGH | src/sentry/feedback/lib/label_query.py | 206 | # Ensure that there is at least one AI-generated label | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tests/sentry/seer/fetch_issues/test_utils.py | 308 | def test_function() -> dict[str, bool]: | CODE |
| LOW⚡ | tests/sentry/seer/fetch_issues/test_utils.py | 316 | def test_function() -> None: | CODE |
| LOW | static/app/components/stackTrace/stackTrace.stories.tsx | 1087 | [99997, 'def handle_request(request):'], | CODE |
| LOW | …ents/events/interfaces/frame/useSourceContext.spec.tsx | 28 | [8, 'def helper():'], | CODE |
| LOW⚡ | …pp/gettingStartedDocs/python-serverless/onboarding.tsx | 58 | def my_function(...): ...`; | CODE |
| LOW⚡ | …pp/gettingStartedDocs/python-serverless/onboarding.tsx | 66 | def my_function(...): | CODE |
| LOW⚡ | …atic/app/gettingStartedDocs/python-awslambda/utils.tsx | 55 | def my_function(event, context): | CODE |
| LOW | …orkflows/scripts/test_calculate_backend_test_shards.py | 33 | def helper(): | STRING |
| LOW | …orkflows/scripts/test_calculate_backend_test_shards.py | 50 | def helper(self): | STRING |
| LOW | …orkflows/scripts/test_calculate_backend_test_shards.py | 265 | def helper(): | STRING |
| LOW⚡ | src/sentry/ratelimits/leaky_bucket.py | 166 | def my_function(): | STRING |
| LOW⚡ | src/sentry/ratelimits/leaky_bucket.py | 175 | def my_function(): | STRING |
| LOW⚡ | src/sentry/ratelimits/leaky_bucket.py | 183 | def my_function(): | STRING |
| LOW | src/sentry/ratelimits/leaky_bucket.py | 198 | def my_function(): | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …sts/sentry/workflow_engine/processors/test_workflow.py | 647 | ) # TODO: implement evaluating slow conditions for activity updates | CODE |
| LOW | static/app/types/workflowEngine/detectors.tsx | 166 | // TODO: Add error detector type fields | COMMENT |
| LOW | static/app/components/arithmeticBuilder/token/grid.tsx | 86 | const selectionKeyHandlerRef = useRef<HTMLInputElement>(null); // TODO: implement | CODE |
| LOW | …ic/app/components/arithmeticBuilder/token/function.tsx | 145 | const selectionKeyHandlerRef = useRef<HTMLInputElement>(null); // TODO: implement | CODE |
| LOW | src/sentry/integrations/msteams/card_builder/issues.py | 96 | # TODO: implement with event as well | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/sentry/tasks/test_digests.py | 87 | CODE | |
| MEDIUM | src/sentry/similarity/backends/dummy.py | 23 | CODE |