# General ownership rules # # The following rules are not specific to any particular area of the product # and are more general ## Legal /LICENSE @getsentry/owners-legal ## Migrations /src/sentry/migrations/ @getsentry/owners-migrations /src/sentry/*/migrations/ @getsentry/owners-migrations ## Snuba /src/sentry/eventstream/ @getsentry/owners-snuba /src/sentry/consumers/ @getsentry/owners-snuba /src/sentry/post_process_forwarder/ @getsentry/owners-snuba /src/sentry/utils/snuba.py @getsentry/owners-snuba @getsentry/discover-n-dashboards /src/sentry/utils/snql.py @getsentry/owners-snuba /src/sentry/utils/arroyo.py @getsentry/owners-snuba /src/sentry/utils/arroyo_producer.py @getsentry/owners-snuba /src/sentry/tsdb/snuba.py @getsentry/owners-snuba /src/sentry/tsdb/redissnuba.py @getsentry/owners-snuba /src/sentry/tagstore/snuba/ @getsentry/owners-snuba /src/sentry/sentry_metrics/ @getsentry/owners-snuba /tests/sentry/sentry_metrics/ @getsentry/owners-snuba /src/sentry/snuba/metrics/ @getsentry/owners-snuba @getsentry/telemetry-experience /src/sentry/snuba/metrics/query.py @getsentry/owners-snuba @getsentry/telemetry-experience /src/sentry/search/events/datasets/metrics_layer.py @getsentry/owners-snuba ## Event Ingestion /src/sentry/attachments/ @getsentry/owners-ingest /src/sentry/api/endpoints/relay/ @getsentry/owners-ingest /src/sentry/api/endpoints/project_transaction_names.py @getsentry/owners-ingest /src/sentry/coreapi.py @getsentry/owners-ingest /src/sentry/ingest/ @getsentry/owners-ingest /src/sentry/interfaces/ @getsentry/owners-ingest /src/sentry/message_filters.py @getsentry/owners-ingest /src/sentry/quotas/ @getsentry/owners-ingest /src/sentry/relay/ @getsentry/owners-ingest /src/sentry/utils/data_filters.py @getsentry/owners-ingest /src/sentry/web/api.py @getsentry/owners-ingest /src/sentry/scripts/quotas/ @getsentry/owners-ingest /src/sentry/scripts/tsdb/ @getsentry/owners-ingest /src/sentry/tasks/relay.py @getsentry/owners-ingest /src/sentry/tasks/unmerge.py @getsentry/owners-ingest /tests/sentry/event_manager/ @getsentry/owners-ingest /tests/sentry/ingest/ @getsentry/owners-ingest /tests/sentry/relay/ @getsentry/owners-ingest /tests/relay_integration/ @getsentry/owners-ingest /bin/invalidate-project-configs @getsentry/owners-ingest ## Security /src/sentry/net/ @getsentry/security /src/sentry/auth/ @getsentry/security @getsentry/enterprise /src/sentry/api/permissions.py @getsentry/security @getsentry/enterprise /src/sentry/api/authentication.py @getsentry/security @getsentry/enterprise /src/sentry/api/endpoints/auth* @getsentry/security @getsentry/enterprise /src/sentry/api/endpoints/user_permission* @getsentry/security @getsentry/enterprise /src/sentry/web/frontend/auth_close.py @getsentry/security /src/sentry/web/frontend/auth_login.py @getsentry/security /src/sentry/web/frontend/auth_logout.py @getsentry/security /src/sentry/web/frontend/auth_organization_id_login.py @getsentry/security /src/sentry/web/frontend/auth_organization_login.py @getsentry/security /src/sentry/web/frontend/auth_provider_login.py @getsentry/security /src/sentry/web/frontend/oauth_token.py @getsentry/security /src/sentry/web/frontend/oauth_authorize.py @getsentry/security /src/sentry/web/frontend/openidtoken.py @getsentry/security ## Dev /.github/ @getsentry/owners-sentry-dev /config/hooks/ @getsentry/owners-sentry-dev /scripts/ @getsentry/owners-sentry-dev /tools/ @getsentry/owners-sentry-dev Makefile @getsentry/owners-sentry-dev .envrc @getsentry/owners-sentry-dev .pre-commit-config.yaml @getsentry/owners-sentry-dev .git-blame-ignore-revs @getsentry/owners-sentry-dev /fixtures/stubs-for-mypy @getsentry/python-typing /tools/mypy_helpers/ @getsentry/python-typing /tests/tools/mypy_helpers @getsentry/python-typing ## GitHub Routing Automations - notion.so/473791bae5bf43399d46093050b77bf0 /.github/labels.yml @getsentry/open-source /.github/workflows/react-to-product-owners-yml-changes.yml @getsentry/open-source /bin/react-to-product-owners-yml-changes.py @getsentry/open-source /bin/react-to-product-owners-yml-changes.sh @getsentry/open-source /static/app/components/sidebar/index.tsx @getsentry/open-source ## Relocation - getsentry/team-ospo#153 /src/sentry/backup/ @getsentry/open-source /src/sentry/testutils/helpers/backups.py @getsentry/open-source /src/sentry/runner/commands/backup.py @getsentry/open-source /src/sentry/testutils/helpers/backups.py @getsentry/open-source ## Build & Releases /.github/workflows/release.yml @getsentry/release-approvers /scripts/bump-version.sh @getsentry/release-approvers /scripts/post-release.sh @getsentry/release-approvers /self-hosted @getsentry/release-approvers setup.py @getsentry/release-approvers setup.cfg @getsentry/release-approvers requirements*.txt @getsentry/owners-python-build pyproject.toml @getsentry/owners-python-build tsconfig.* @getsentry/owners-js-build webpack.config.* @getsentry/owners-js-build babel.config.* @getsentry/owners-js-build build-utils/ @getsentry/owners-js-build package.json @getsentry/owners-js-deps yarn.lock @getsentry/owners-js-deps ## Design /static/app/icons/ @getsentry/design /static/fonts/ @getsentry/design /static/images/ @getsentry/design # Owners by product feature # # The following ownership rules are specific to particular features of the # Sentry product. These rules generally map to a signle team, but that may not # always be the case. ## Crons /static/app/views/monitors @getsentry/crons /src/sentry/monitors @getsentry/crons /tests/sentry/monitors @getsentry/crons /src/sentry/utils/monitors.py @getsentry/crons /tests/sentry/utils/test_monitors.py @getsentry/crons ## End Crons ## Hybrid Cloud /src/sentry/silo/ @getsentry/hybrid-cloud /src/sentry/services/hybrid_cloud/ @getsentry/hybrid-cloud /src/sentry/api_gateway/ @getsentry/hybrid-cloud /src/sentry/middleware/api_gateway.py @getsentry/hybrid-cloud /src/sentry/middleware/customer_domain.py @getsentry/hybrid-cloud /src/sentry/middleware/subdomain.py @getsentry/hybrid-cloud /src/sentry/middleware/integration/ @getsentry/hybrid-cloud /src/sentry/api/endpoints/rpc.py @getsentry/hybrid-cloud /src/sentry/models/outbox.py @getsentry/hybrid-cloud /src/sentry/tasks/deliver_from_outbox.py @getsentry/hybrid-cloud /src/sentry/tasks/deletion/hybrid_cloud.py @getsentry/hybrid-cloud ## End of Hybrid Cloud ## Workflow /static/app/views/settings/projectAlerts/ @getsentry/issues /static/app/views/alerts/ @getsentry/issues /static/app/views/issueDetails/ @getsentry/issues /static/app/views/projects/ @getsentry/issues /static/app/views/projectDetail/ @getsentry/issues /static/app/views/releases/ @getsentry/issues /static/app/views/organizationStats/teamInsights/ @getsentry/issues /src/sentry/templates/sentry/emails/incidents/ @getsentry/issues /src/sentry/incidents/ @getsentry/issues /tests/sentry/incidents/ @getsentry/issues /tests/acceptance/test_incidents.py @getsentry/issues /src/sentry/api/endpoints/group_events.py @getsentry/issues /src/sentry/api/endpoints/organization_group_index.py @getsentry/issues /src/sentry/api/endpoints/organization_activity.py @getsentry/issues /src/sentry/api/endpoints/organization_searches.py @getsentry/issues /src/sentry/api/helpers/group_index.py @getsentry/issues /src/sentry/api/helpers/events.py @getsentry/issues /src/sentry/snuba/models.py @getsentry/issues /src/sentry/snuba/query_subscription_consumer.py @getsentry/issues /src/sentry/snuba/subscriptions.py @getsentry/issues /tests/snuba/incidents/ @getsentry/issues /tests/sentry/snuba/test_query_subscription_consumer.py @getsentry/issues /tests/sentry/snuba/test_subscriptions.py @getsentry/issues /tests/sentry/snuba/test_tasks.py @getsentry/issues /tests/snuba/snuba/test_query_subscription_consumer.py @getsentry/issues /src/sentry/api/issue_search.py @getsentry/issues /tests/sentry/api/test_issue_search.py @getsentry/issues /src/sentry/tasks/auto_remove_inbox.py @getsentry/issues /src/sentry/tasks/auto_resolve_issues.py @getsentry/issues ## Endof Workflow ## Visibility /src/sentry/api/endpoints/organization_tags.py @getsentry/performance /src/sentry/api/endpoints/organization_events_histogram.py @getsentry/performance /tests/snuba/api/endpoints/* @getsentry/discover-n-dashboards /tests/snuba/api/endpoints/test_organization_events_histogram.py @getsentry/performance /tests/snuba/api/endpoints/test_organization_events_facets_performance.py @getsentry/performance /tests/snuba/api/endpoints/test_organization_events_spans_performance.py @getsentry/performance /tests/snuba/api/endpoints/test_organization_events_spans_histogram.py @getsentry/performance /tests/snuba/api/endpoints/test_organization_events_trace.py @getsentry/performance /tests/snuba/api/endpoints/test_organization_events_trends.py @getsentry/performance /tests/snuba/api/endpoints/test_organization_events_vitals.py @getsentry/performance /tests/snuba/api/endpoints/test_organization_tagkey_values.py @getsentry/performance /tests/snuba/api/endpoints/test_organization_tags.py @getsentry/performance /src/sentry/api/serializers/snuba.py @getsentry/discover-n-dashboards /src/sentry/snuba/discover.py @getsentry/discover-n-dashboards /src/sentry/snuba/metrics_performance.py @getsentry/discover-n-dashboards /src/sentry/snuba/metrics_enhanced_performance.py @getsentry/discover-n-dashboards /src/sentry/search/events/ @getsentry/discover-n-dashboards @getsentry/issues /tests/snuba/search/test_backend.py @getsentry/discover-n-dashboards /static/app/utils/discover/ @getsentry/discover-n-dashboards /static/app/components/charts/ @getsentry/discover-n-dashboards ## Endof Visibility ## Performance /src/sentry/api/endpoints/organization_events_facets_performance.py @getsentry/performance /src/sentry/api/endpoints/organization_events_spans_performance.py @getsentry/performance /src/sentry/api/endpoints/organization_events_spans_histogram.py @getsentry/performance /src/sentry/api/endpoints/organization_events_trace.py @getsentry/performance /src/sentry/api/endpoints/organization_events_trends.py @getsentry/performance /src/sentry/api/endpoints/organization_events_trends_v2.py @getsentry/performance /src/sentry/api/endpoints/organization_events_vitals.py @getsentry/performance /src/sentry/api/endpoints/organization_transaction_anomaly_detection.py @getsentry/data /src/sentry/utils/performance_issues/ @getsentry/performance /static/app/views/performance/ @getsentry/performance /static/app/utils/performance/ @getsentry/performance /static/app/components/events/interfaces/spans/ @getsentry/performance /static/app/components/performance/ @getsentry/performance /static/app/components/quickTrace/ @getsentry/performance ## Endof Performance ## Discover/Dashboards /src/sentry/api/endpoints/organization_dashboards.py @getsentry/discover-n-dashboards /src/sentry/api/endpoints/organization_dashboard_details.py @getsentry/discover-n-dashboards /src/sentry/api/endpoints/organization_dashboard_widget_details.py @getsentry/discover-n-dashboards /src/sentry/api/bases/organization_events.py @getsentry/discover-n-dashboards /src/sentry/api/endpoints/organization_event_details.py @getsentry/discover-n-dashboards /src/sentry/api/endpoints/organization_events.py @getsentry/discover-n-dashboards /src/sentry/api/endpoints/organization_events_facets.py @getsentry/discover-n-dashboards /src/sentry/api/endpoints/organization_events_meta.py @getsentry/discover-n-dashboards /src/sentry/api/endpoints/organization_events_stats.py @getsentry/discover-n-dashboards /src/sentry/api/endpoints/organization_measurements_meta.py @getsentry/discover-n-dashboards /src/sentry/api/serializers/models/dashboard.py @getsentry/discover-n-dashboards /src/sentry/api/serializers/models/discoversavedquery.py @getsentry/discover-n-dashboards /src/sentry/api/serializers/rest_framework/dashboard.py @getsentry/discover-n-dashboards /src/sentry/discover/ @getsentry/discover-n-dashboards /tests/sentry/snuba/test_discover.py @getsentry/discover-n-dashboards /src/sentry/api/event_search.py @getsentry/discover-n-dashboards /tests/sentry/api/test_event_search.py @getsentry/discover-n-dashboards /src/sentry/data_export/ @getsentry/discover-n-dashboards /tests/sentry/data_export/ @getsentry/discover-n-dashboards /static/app/views/eventsV2/ @getsentry/discover-n-dashboards /static/app/views/discover/ @getsentry/discover-n-dashboards /static/app/views/dashboardsV2/ @getsentry/discover-n-dashboards /static/app/components/dashboards/ @getsentry/discover-n-dashboards ## Endof Discover/Dashboards ## Starfish /src/sentry/api/endpoints/organization_events_facets_stats_performance.py @getsentry/team-starfish /src/sentry/api/endpoints/organization_events_starfish.py @getsentry/team-starfish /tests/snuba/api/endpoints/test_organization_events_facets_stats_performance.py @getsentry/team-starfish /static/app/views/starfish/ @getsentry/team-starfish /static/app/views/performance/database @getsentry/team-starfish ## Endof Starfish ## Profiling /static/app/components/profiling @getsentry/profiling /static/app/types/jsSelfProfiling.d.ts @getsentry/profiling /static/app/types/profiling.d.ts @getsentry/profiling /static/app/utils/profiling @getsentry/profiling /static/app/views/profiling @getsentry/profiling /src/sentry/utils/profiling.py @getsentry/profiling /src/sentry/api/endpoints/project_profiling_profile.py @getsentry/profiling /src/sentry/api/endpoints/organization_profiling_profiles.py @getsentry/profiling /src/sentry/profiles @getsentry/profiling /tests/sentry/profiles @getsentry/profiling /tests/sentry/api/endpoints/test_project_profiling_profile.py @getsentry/profiling /tests/sentry/api/endpoints/test_organization_profiling_profiles.py @getsentry/profiling ## End of Profiling ## Replays /static/app/components/replays/ @getsentry/replay-frontend /static/app/utils/replays/ @getsentry/replay-frontend /static/app/views/replays/ @getsentry/replay-frontend /src/sentry/replays/ @getsentry/replay-backend /tests/sentry/replays/ @getsentry/replay-backend ## End of Replays ## Feedback v2 /static/app/components/feedback/ @getsentry/feedback-frontend /static/app/utils/feedback/ @getsentry/feedback-frontend /static/app/views/feedback/ @getsentry/feedback-frontend /src/sentry/feedback/ @getsentry/feedback-backend /tests/sentry/feedback/ @getsentry/feedback-backend ## End of Feedback v2 ## Integrations /src/sentry/api/endpoints/integrations/ @getsentry/issues /src/sentry/api/endpoints/project_stacktrace_link.py @getsentry/issues /src/sentry/api/endpoints/organization_integration_repos.py @getsentry/issues /src/sentry/api/endpoints/organization_release_previous_commits.py @getsentry/issues /src/sentry/api/endpoints/sentry_app/ @getsentry/issues /src/sentry/api/endpoints/project_rule*.py @getsentry/issues /static/app/views/organizationIntegrations @getsentry/issues /static/app/views/settings/project/projectOwnership/ @getsentry/issues /src/sentry/digests/ @getsentry/issues /src/sentry/identity/ @getsentry/issues /src/sentry/integrations/ @getsentry/issues /src/sentry/mail/ @getsentry/issues /src/sentry/mediators/ @getsentry/issues /src/sentry/notifications/ @getsentry/issues /src/sentry/pipeline/ @getsentry/issues /src/sentry/plugins/ @getsentry/issues /src/sentry/ratelimits/ @getsentry/issues /src/sentry/shared_integrations/ @getsentry/issues /src/sentry/models/externalactor.py @getsentry/issues /src/sentry/models/externalissue.py @getsentry/issues /src/sentry/models/identity.py @getsentry/issues /src/sentry/models/integrationfeature.py @getsentry/issues /src/sentry/models/integrations/ @getsentry/issues /src/sentry/models/notificationsetting.py @getsentry/issues /src/sentry/tasks/code_owners.py @getsentry/issues /src/sentry/tasks/commits.py @getsentry/issues /src/sentry/tasks/commit_context.py @getsentry/issues /src/sentry/tasks/digests.py @getsentry/issues /src/sentry/tasks/email.py @getsentry/issues /src/sentry/tasks/integrations/ @getsentry/issues /src/sentry/tasks/reports.py @getsentry/issues /src/sentry/tasks/user_report.py @getsentry/issues /src/sentry/tasks/weekly_reports.py @getsentry/issues /src/sentry_plugins/ @getsentry/issues *code_mappings*.py @getsentry/issues # To find matching files -> find . -name "*sentry_app*.py" *sentry_app*.py @getsentry/issues *sentryapp*.py @getsentry/issues *doc_integration*.py @getsentry/issues *docintegration*.py @getsentry/issues /src/sentry/middleware/ratelimit.py @getsentry/issues /src/sentry/middleware/access_log.py @getsentry/issues ## End of Integrations ## Data /src/sentry/models/featureadoption.py @getsentry/data /src/sentry/models/group.py @getsentry/data /src/sentry/models/grouphash.py @getsentry/data /src/sentry/models/grouprelease.py @getsentry/data /src/sentry/models/groupresolution.py @getsentry/data /src/sentry/models/integration.py @getsentry/data @getsentry/issues /src/sentry/models/organization.py @getsentry/data /src/sentry/models/organizationmember.py @getsentry/data /src/sentry/models/organizationoption.py @getsentry/data /src/sentry/models/project.py @getsentry/data /src/sentry/models/projectoption.py @getsentry/data /src/sentry/models/release.py @getsentry/data /src/sentry/models/sentryapp.py @getsentry/data @getsentry/issues /src/sentry/models/sentryappinstallation.py @getsentry/data @getsentry/issues /src/sentry/models/user.py @getsentry/data ## End of Data ## Enterprise /static/app/views/organizationStats @getsentry/enterprise /src/sentry/api/endpoints/organization_stats*.py @getsentry/enterprise /src/sentry/api/endpoints/organization_auditlogs.py @getsentry/enterprise /static/app/views/settings/organizationAuth/ @getsentry/enterprise /tests/sentry/api/endpoints/test_auth*.py @getsentry/enterprise /tests/sentry/api/test_data_secrecy.py @getsentry/enterprise /src/sentry/scim/ @getsentry/enterprise /tests/sentry/api/test_scim*.py @getsentry/enterprise /src/sentry/tasks/integrations/github/pr_comment.py @getsentry/enterprise /src/sentry/api/endpoints/organization_projects_experiment.py @getsentry/enterprise /tests/sentry/api/endpoints/test_organization_projects_experiment.py @getsentry/enterprise ## End of Enterprise ## Native /src/sentry/api/endpoints/chunk.py @getsentry/owners-native /src/sentry/api/endpoints/project_app_store_connect_credentials.py @getsentry/owners-native /src/sentry/lang/native/ @getsentry/owners-native /src/sentry/processing/realtime_metrics/ @getsentry/owners-native /src/sentry/tasks/app_store_connect.py @getsentry/owners-native /src/sentry/tasks/assemble.py @getsentry/owners-native /src/sentry/tasks/low_priority_symbolication.py @getsentry/owners-native /src/sentry/tasks/symbolication.py @getsentry/owners-native /src/sentry/utils/appleconnect/ @getsentry/owners-native /tests/sentry/tasks/test_low_priority_symbolication.py @getsentry/owners-native /src/sentry/tasks/reprocessing.py @getsentry/owners-processing /src/sentry/tasks/reprocessing2.py @getsentry/owners-processing /src/sentry/reprocessing2.py @getsentry/owners-processing /src/sentry/tasks/store.py @getsentry/owners-processing ## End of Native ## APIs /src/sentry/apidocs/ @getsentry/owners-api /src/sentry/api/urls.py @getsentry/owners-api /api-docs/ @getsentry/owners-api /tests/apidocs/ @getsentry/owners-api /.github/workflows/openapi.yml @getsentry/owners-api /.github/workflows/openapi-diff.yml @getsentry/owners-api ## End of APIs ## SDK /src/sentry/utils/sdk.py @getsentry/team-web-sdk-backend ## End of SDK ## Telemetry Experience /src/sentry/api/endpoints/organization_metrics.py @getsentry/telemetry-experience /src/sentry/api/endpoints/organization_sessions.py @getsentry/telemetry-experience /src/sentry/api/endpoints/project_dynamic_sampling.py @getsentry/telemetry-experience /src/sentry/dynamic_sampling/ @getsentry/telemetry-experience /src/sentry/release_health/metrics_sessions_v2.py @getsentry/telemetry-experience /tests/sentry/api/endpoints/test_organization_metric_data.py @getsentry/telemetry-experience /tests/sentry/api/endpoints/test_organization_metric_details.py @getsentry/telemetry-experience /tests/sentry/api/endpoints/test_organization_metric_tag_details.py @getsentry/telemetry-experience /tests/sentry/api/endpoints/test_organization_metric_tags.py @getsentry/telemetry-experience /tests/sentry/api/endpoints/test_organization_metrics.py @getsentry/telemetry-experience /tests/sentry/api/endpoints/test_project_dynamic_sampling.py @getsentry/telemetry-experience /tests/sentry/api/endpoints/test_organization_dynamic_sampling_sdk_versions.py @getsentry/telemetry-experience /tests/sentry/snuba/metrics/ @getsentry/telemetry-experience /tests/snuba/api/endpoints/test_organization_sessions.py @getsentry/telemetry-experience /static/app/views/settings/project/dynamicSampling/ @getsentry/telemetry-experience /static/app/views/performance/landing/dynamicSamplingMetricsAccuracyAlert.tsx @getsentry/telemetry-experience /static/app/views/performance/landing/dynamicSamplingMetricsAccuracy.spec.tsx @getsentry/telemetry-experience /static/app/utils/metrics/ @getsentry/telemetry-experience /static/app/actionCreators/metrics.tsx @getsentry/telemetry-experience /static/app/actionCreators/metrics.spec.tsx @getsentry/telemetry-experience /static/app/types/metrics.tsx @getsentry/telemetry-experience ## End of Telemetry Experience ## Growth /src/sentry/api/endpoints/organization_onboarding* @getsentry/growth /src/sentry/web/frontend/auth_login.py @getsentry/growth /static/app/utils/analytics.tsx @getsentry/growth /static/app/utils/routeAnalytics* @getsentry/growth /static/app/views/onboarding* @getsentry/growth ## End of Growth ## Issues /src/sentry/event_manager.py @getsentry/issues /src/sentry/grouping/ @getsentry/issues /src/sentry/issues/ @getsentry/issues /src/sentry/tasks/post_process.py @getsentry/issues /src/sentry/types/issues.py @getsentry/issues /tests/sentry/event_manager/test_event_manager.py @getsentry/issues /tests/sentry/grouping/ @getsentry/issues /tests/sentry/issues/ @getsentry/issues /tests/sentry/search/ @getsentry/issues /tests/sentry/tasks/test_post_process.py @getsentry/issues /tests/snuba/search/ @getsentry/issues /src/sentry/search/snuba/ @getsentry/issues /static/app/views/issueList @getsentry/issues /static/app/views/organizationGroupDetails @getsentry/issues /src/sentry/api/endpoints/source_map_debug.py @getsentry/issues /src/sentry/api/helpers/source_map_helper.py @getsentry/issues /src/sentry/api/endpoints/actionable_items.py @getsentry/issues /src/sentry/api/helpers/actionable_items_helper.py @getsentry/issues ## End of Issues