# Order matters, the last matched is what is used

# APM Core Python is the default owner of all files
*                                   @DataDog/apm-core-python

# Framework Integrations
ddtrace/ext/                        @DataDog/apm-core-python @DataDog/apm-idm-python
ddtrace/contrib/                    @DataDog/apm-core-python @DataDog/apm-idm-python
ddtrace/internal/schema/            @DataDog/apm-core-python @DataDog/apm-idm-python
tests/contrib/                      @DataDog/apm-core-python @DataDog/apm-idm-python
tests/internal/peer_service         @DataDog/apm-core-python @DataDog/apm-idm-python
tests/internal/service_name         @DataDog/apm-core-python @DataDog/apm-idm-python
tests/contrib/grpc                  @DataDog/apm-idm-python @DataDog/asm-python

# Files which can be approved by anyone
# DEV: This helps not requiring apm-core-python to review new files added
#      or files which changes often with most PRs
releasenotes/                       @DataDog/apm-python
tests/snapshots/                    @DataDog/apm-python
riotfile.py                         @DataDog/apm-python
.riot/requirements/                 @DataDog/apm-python
CHANGELOG.md                        @DataDog/apm-python
README.md                           @DataDog/apm-python
ddtrace/internal/telemetry/         @DataDog/apm-python
tests/telemetry                     @DataDog/apm-python

# Guild
setup.py                            @DataDog/python-guild
setup.cfg                           @DataDog/python-guild
pyproject.toml                      @DataDog/python-guild
hatch.toml                          @DataDog/python-guild
.readthedocs.yml                    @DataDog/python-guild  @DataDog/apm-core-python
README.md                           @DataDog/python-guild  @DataDog/apm-core-python
mypy.ini                            @DataDog/python-guild  @DataDog/apm-core-python
.circleci/                          @DataDog/python-guild  @DataDog/apm-core-python
.github/                            @DataDog/python-guild  @DataDog/apm-core-python
.gitlab/                            @DataDog/python-guild  @DataDog/apm-core-python
.gitlab-ci.yml                      @DataDog/python-guild  @DataDog/apm-core-python
scripts/update-system-tests-version.py @DataDog/python-guild  @DataDog/apm-core-python
ddtrace/internal/_file_queue.py     @DataDog/python-guild
ddtrace/internal/_unpatched.py      @DataDog/python-guild
ddtrace/internal/compat.py          @DataDog/python-guild  @DataDog/apm-core-python
ddtrace/internal/endpoints.py       @DataDog/python-guild  @DataDog/asm-python
ddtrace/internal/settings/_config.py          @DataDog/python-guild  @DataDog/apm-sdk-capabilities-python
docs/                               @DataDog/python-guild
tests/utils.py                      @DataDog/python-guild
tests/suitespec.yml                 @DataDog/python-guild  @DataDog/apm-core-python
tests/contrib/suitespec.yml         @DataDog/python-guild
tests/contrib/flask/app.py         @DataDog/python-guild
tests/contrib/django/django1_app/urls.py @DataDog/python-guild
tests/suitespec.py                  @DataDog/python-guild  @DataDog/apm-core-python
scripts/bump_ddtrace.py             @DataDog/python-guild
tests/smoke_test.py                 @DataDog/python-guild

# Core / Language Platform
tests/internal                      @DataDog/apm-core-python
tests/lib-injection                 @DataDog/apm-core-python
tests/opentelemetry                 @DataDog/apm-core-python
tests/opentracer                    @DataDog/apm-core-python
tests/tracer                        @DataDog/apm-core-python

# Test Visibility and related
ddtrace/contrib/internal/coverage                     @DataDog/ci-app-libraries
ddtrace/contrib/internal/pytest                       @DataDog/ci-app-libraries
ddtrace/contrib/internal/pytest_bdd                   @DataDog/ci-app-libraries
ddtrace/contrib/internal/pytest_benchmark             @DataDog/ci-app-libraries
ddtrace/contrib/internal/unittest                     @DataDog/ci-app-libraries
ddtrace/contrib/internal/pytest                       @DataDog/ci-app-libraries
ddtrace/contrib/internal/pytest_bdd                   @DataDog/ci-app-libraries
ddtrace/contrib/internal/pytest_benchmark             @DataDog/ci-app-libraries
ddtrace/contrib/internal/unittest                     @DataDog/ci-app-libraries
tests/contrib/asynctest                               @DataDog/ci-app-libraries
tests/contrib/pytest                                  @DataDog/ci-app-libraries
tests/contrib/pytest_bdd                              @DataDog/ci-app-libraries
tests/contrib/pytest_benchmark                        @DataDog/ci-app-libraries
tests/contrib/pytest_flaky                            @DataDog/ci-app-libraries
tests/contrib/unittest                                @DataDog/ci-app-libraries
tests/integration/test_integration_civisibility.py    @DataDog/ci-app-libraries
ddtrace/ext/ci.py                                     @DataDog/ci-app-libraries
ddtrace/ext/test_visibility                           @DataDog/ci-app-libraries
ddtrace/ext/test.py                                   @DataDog/ci-app-libraries
ddtrace/internal/ci_visibility                        @DataDog/ci-app-libraries
ddtrace/internal/test_visibility                      @DataDog/ci-app-libraries
ddtrace/internal/codeowners.py                        @DataDog/apm-core-python @DataDog/ci-app-libraries
ddtrace/internal/coverage                             @DataDog/apm-core-python @DataDog/ci-app-libraries
tests/internal/test_codeowners.py                     @DataDog/ci-app-libraries
tests/ci_visibility                                   @DataDog/ci-app-libraries
tests/coverage                                        @DataDog/apm-core-python @DataDog/ci-app-libraries
tests/tracer/test_ci.py                               @DataDog/ci-app-libraries
ddtrace/ext/git.py                                    @DataDog/ci-app-libraries @DataDog/apm-core-python
scripts/ci_visibility/*                               @DataDog/ci-app-libraries
# Test Visibility owns the freezegun integration because it's the team most affected by it
ddtrace/contrib/internal/freezegun                    @DataDog/ci-app-libraries
tests/contrib/freezegun                               @DataDog/ci-app-libraries
# Test Visibility: Selenium integration
ddtrace/internal/selenium                             @DataDog/ci-app-libraries
tests/contrib/selenium                                @DataDog/ci-app-libraries
tests/snapshots/test_selenium_*                       @DataDog/ci-app-libraries
# New Test Optimization plugin
ddtrace/testing/                                      @DataDog/ci-app-libraries
tests/testing/                                        @DataDog/ci-app-libraries

# Debugger
ddtrace/debugging/                  @DataDog/debugger-python
ddtrace/internal/settings/dynamic_instrumentation.py     @DataDog/debugger-python
ddtrace/internal/injection.py       @DataDog/debugger-python @DataDog/apm-core-python
ddtrace/internal/wrapping.py        @DataDog/debugger-python @DataDog/apm-core-python
ddtrace/internal/module.py          @DataDog/debugger-python @DataDog/apm-core-python
ddtrace/internal/symbol_db/         @DataDog/debugger-python
tests/debugging/                    @DataDog/debugger-python
tests/internal/test_injection.py    @DataDog/debugger-python @DataDog/apm-core-python
tests/internal/test_wrapping.py     @DataDog/debugger-python @DataDog/apm-core-python
tests/internal/test_module.py       @DataDog/debugger-python @DataDog/apm-core-python
tests/internal/symbol_db/           @DataDog/debugger-python
.gitlab/tests/debugging.yml         @DataDog/debugger-python

# ASM
.cursor/rules/appsec.mdc            @DataDog/asm-python
.cursor/rules/iast.mdc              @DataDog/asm-python
.gitlab/tests/appsec.yml            @DataDog/asm-python
benchmarks/appsec*                  @DataDog/asm-python
benchmarks/bm/iast_utils*           @DataDog/asm-python
benchmarks/bm/iast_fixtures*        @DataDog/asm-python
benchmarks/base/aspects_benchmarks_generate.py @DataDog/asm-python
ddtrace/appsec/                     @DataDog/asm-python
ddtrace/internal/settings/asm.py             @DataDog/asm-python
ddtrace/contrib/internal/subprocess/         @DataDog/asm-python
ddtrace/contrib/internal/flask_login/        @DataDog/asm-python
ddtrace/contrib/internal/webbrowser          @DataDog/asm-python
ddtrace/contrib/internal/urllib              @DataDog/asm-python
ddtrace/internal/_exceptions.py     @DataDog/asm-python
ddtrace/internal/appsec/            @DataDog/asm-python
ddtrace/internal/iast/              @DataDog/asm-python
tests/appsec/                       @DataDog/asm-python
tests/contrib/subprocess            @DataDog/asm-python
tests/snapshots/tests*appsec*.json  @DataDog/asm-python
scripts/iast/*                      @DataDog/asm-python


# Profiling
ddtrace/profiling                   @DataDog/profiling-python
ddtrace/internal/settings/profiling.py       @DataDog/profiling-python
ddtrace/internal/datadog/profiling  @DataDog/profiling-python
tests/profiling                     @DataDog/profiling-python
.github/workflows/profiling-native.yml       @DataDog/profiling-python
.gitlab/tests/profiling.yml         @DataDog/profiling-python
.github/workflows/pytorch_gpu_tests.yml @DataDog/profiling-python

# Crashtracker
ddtrace/internal/core/crashtracking.py       @DataDog/profiling-python @DataDog/apm-core-python
ddtrace/internal/settings/crashtracker.py   @DataDog/profiling-python @DataDog/apm-core-python
ddtrace/commands/_dd_crashtracker_receiver.py @DataDog/profiling-python @DataDog/apm-core-python
tests/internal/crashtracker/                 @DataDog/profiling-python @DataDog/apm-core-python
src/native/crashtracker*                     @DataDog/profiling-python @DataDog/apm-core-python

# MLObs
ddtrace/llmobs/                                               @DataDog/ml-observability
ddtrace/contrib/internal/openai                               @DataDog/ml-observability
ddtrace/contrib/internal/langchain                            @DataDog/ml-observability
ddtrace/contrib/internal/botocore/services/bedrock.py         @DataDog/ml-observability
ddtrace/contrib/internal/botocore/services/bedrock_agents.py  @DataDog/ml-observability
ddtrace/contrib/botocore/services/bedrock.py                  @DataDog/ml-observability
ddtrace/contrib/internal/anthropic                            @DataDog/ml-observability
ddtrace/contrib/internal/google_adk                           @DataDog/ml-observability
ddtrace/contrib/internal/google_generativeai                  @DataDog/ml-observability
ddtrace/contrib/internal/google_genai                         @DataDog/ml-observability
ddtrace/contrib/internal/vertexai                             @DataDog/ml-observability
ddtrace/contrib/internal/langgraph                            @DataDog/ml-observability
ddtrace/contrib/internal/crewai                               @DataDog/ml-observability
ddtrace/contrib/internal/openai_agents                        @DataDog/ml-observability
ddtrace/contrib/internal/litellm                              @DataDog/ml-observability
ddtrace/contrib/internal/pydantic_ai                          @DataDog/ml-observability
ddtrace/contrib/internal/ray                                  @DataDog/ml-observability
ddtrace/contrib/internal/mcp                                  @DataDog/ml-observability
ddtrace/contrib/internal/vllm                                 @DataDog/ml-observability
tests/llmobs                                                  @DataDog/ml-observability
tests/contrib/openai                                          @DataDog/ml-observability
tests/contrib/langchain                                       @DataDog/ml-observability
tests/contrib/botocore/test_bedrock.py                        @DataDog/ml-observability
tests/contrib/botocore/test_bedrock_agents.py                 @DataDog/ml-observability
tests/contrib/botocore/test_bedrock_llmobs.py                 @DataDog/ml-observability
tests/contrib/botocore/test_bedrock_agents_llmobs.py          @DataDog/ml-observability
tests/contrib/botocore/bedrock_utils.py                       @DataDog/ml-observability
tests/contrib/botocore/bedrock_cassettes                      @DataDog/ml-observability
tests/contrib/anthropic                                       @DataDog/ml-observability
tests/contrib/google_adk                                      @DataDog/ml-observability
tests/contrib/google_generativeai                             @DataDog/ml-observability
tests/contrib/google_genai                                    @DataDog/ml-observability
tests/contrib/vertexai                                        @DataDog/ml-observability
tests/contrib/langgraph                                       @DataDog/ml-observability
tests/contrib/crewai                                          @DataDog/ml-observability
tests/contrib/openai_agents                                   @DataDog/ml-observability
tests/contrib/litellm                                         @DataDog/ml-observability
tests/contrib/pydantic_ai                                     @DataDog/ml-observability
tests/contrib/ray                                             @DataDog/ml-observability
tests/contrib/mcp                                             @DataDog/ml-observability
tests/contrib/vllm                                            @DataDog/ml-observability
.gitlab/tests/llmobs.yml                                      @DataDog/ml-observability
# MLObs snapshot tests
tests/snapshots/tests.contrib.anthropic.*                     @DataDog/ml-observability
tests/snapshots/tests.contrib.langchain.*                     @DataDog/ml-observability
tests/snapshots/tests.contrib.openai.*                        @DataDog/ml-observability
tests/snapshots/tests.contrib.vertexai.*                      @DataDog/ml-observability
tests/snapshots/tests.contrib.botocore.test_bedrock_agents.*  @DataDog/ml-observability
tests/snapshots/tests.contrib.botocore.test_bedrock.*         @DataDog/ml-observability
tests/snapshots/tests.contrib.google_adk.*                   @DataDog/ml-observability
tests/snapshots/tests.contrib.google_generativeai.*           @DataDog/ml-observability
tests/snapshots/tests.contrib.langgraph.*                     @DataDog/ml-observability
tests/snapshots/tests.contrib.crewai.*                        @DataDog/ml-observability
tests/snapshots/tests.contrib.openai_agents.*                 @DataDog/ml-observability
tests/snapshots/tests.contrib.litellm.*                       @DataDog/ml-observability
tests/snapshots/tests.contrib.vllm.*                          @DataDog/ml-observability

# Remote Config
ddtrace/internal/remoteconfig       @DataDog/remote-config @DataDog/apm-core-python
tests/internal/remoteconfig         @DataDog/remote-config @DataDog/apm-core-python

# Feature Flags
ddtrace/openfeature/                      @DataDog/feature-flagging-and-experimentation-sdk
ddtrace/internal/openfeature/             @DataDog/feature-flagging-and-experimentation-sdk
ddtrace/internal/settings/openfeature.py  @DataDog/feature-flagging-and-experimentation-sdk
tests/openfeature/                        @DataDog/feature-flagging-and-experimentation-sdk

# API SDK
ddtrace/trace/                                     @DataDog/apm-sdk-capabilities-python
ddtrace/_trace/                                    @DataDog/apm-sdk-capabilities-python
# File commonly updated for integrations, widen ownership to help with PR review
ddtrace/_trace/trace_handlers.py                   @DataDog/apm-sdk-capabilities-python @DataDog/apm-core-python @DataDog/apm-idm-python
ddtrace/opentelemetry/                             @DataDog/apm-sdk-capabilities-python
ddtrace/internal/opentelemetry                     @DataDog/apm-sdk-capabilities-python
ddtrace/opentracer/                                @DataDog/apm-sdk-capabilities-python
ddtrace/propagation/                               @DataDog/apm-sdk-capabilities-python
ddtrace/internal/settings/_opentelemetry.py                 @DataDog/apm-sdk-capabilities-python

ddtrace/internal/sampling.py                       @DataDog/apm-sdk-capabilities-python
ddtrace/internal/tracemethods.py                   @DataDog/apm-sdk-capabilities-python
ddtrace/internal/metrics.py                        @DataDog/apm-sdk-capabilities-python
ddtrace/internal/rate_limiter.py                   @DataDog/apm-sdk-capabilities-python
ddtrace/runtime/                                   @DataDog/apm-sdk-capabilities-python
ddtrace/internal/runtime/                          @DataDog/apm-sdk-capabilities-python
ddtrace/internal/settings/_otel_remapper.py                 @DataDog/apm-sdk-capabilities-python
tests/integration/test_priority_sampling.py        @DataDog/apm-sdk-capabilities-python
tests/integration/test_propagation.py              @DataDog/apm-sdk-capabilities-python
tests/runtime/                                     @DataDog/apm-sdk-capabilities-python
tests/test_sampling.py                             @DataDog/apm-sdk-capabilities-python
tests/test_tracemethods.py                         @DataDog/apm-sdk-capabilities-python
tests/opentelemetry/                               @DataDog/apm-sdk-capabilities-python
tests/tracer/                                      @DataDog/apm-sdk-capabilities-python
# Override because order matters
tests/tracer/test_ci.py                            @DataDog/ci-app-libraries

# AWS Lambda
ddtrace/contrib/internal/aws_lambda                       @DataDog/apm-serverless @DataDog/serverless-aws
tests/contrib/aws_lambda                                  @DataDog/apm-serverless @DataDog/serverless-aws
tests/snapshots/tests.contrib.aws_lambda.*                @DataDog/apm-serverless @DataDog/serverless-aws

# AWS SDK
ddtrace/ext/aws.py                                        @DataDog/apm-serverless @DataDog/serverless-aws @DataDog/apm-idm-python

# Azure Functions
ddtrace/contrib/internal/azure_eventhubs                  @DataDog/apm-serverless @DataDog/serverless-azure-and-gcp
ddtrace/contrib/internal/azure_functions                  @DataDog/apm-serverless @DataDog/serverless-azure-and-gcp
ddtrace/contrib/internal/azure_servicebus                 @DataDog/apm-serverless @DataDog/serverless-azure-and-gcp
tests/contrib/azure_functions*                            @DataDog/apm-serverless @DataDog/serverless-azure-and-gcp
tests/snapshots/tests.contrib.azure_functions*            @DataDog/apm-serverless @DataDog/serverless-azure-and-gcp

# Azure SDK
ddtrace/ext/azure_eventhubs.py                            @DataDog/apm-serverless @DataDog/serverless-azure-and-gcp @DataDog/apm-idm-python
ddtrace/ext/azure_servicebus.py                           @DataDog/apm-serverless @DataDog/serverless-azure-and-gcp @DataDog/apm-idm-python
tests/contrib/azure_eventhubs                             @DataDog/apm-serverless @DataDog/serverless-azure-and-gcp @DataDog/apm-idm-python
tests/contrib/azure_servicebus                            @DataDog/apm-serverless @DataDog/serverless-azure-and-gcp @DataDog/apm-idm-python
tests/snapshots/tests.contrib.azure_eventhubs.*           @DataDog/apm-serverless @DataDog/serverless-azure-and-gcp @DataDog/apm-idm-python
tests/snapshots/tests.contrib.azure_servicebus.*          @DataDog/apm-serverless @DataDog/serverless-azure-and-gcp @DataDog/apm-idm-python

# Serverless (mixed)
tests/internal/test_serverless.py                         @DataDog/apm-serverless @DataDog/asm-python @DataDog/serverless-aws @DataDog/serverless-azure-and-gcp

# Data Streams Monitoring
ddtrace/data_streams.py                                   @DataDog/data-streams-monitoring
ddtrace/internal/datastreams                              @DataDog/data-streams-monitoring
tests/datastreams                                         @DataDog/data-streams-monitoring
tests/contrib/**/test_*dsm.py                             @DataDog/data-streams-monitoring

# ASM (order matters)
tests/**/*appsec*               @DataDog/asm-python
tests/**/*iast*                 @DataDog/asm-python
tests/tracer/test_propagation.py        @DataDog/apm-sdk-capabilities-python @DataDog/asm-python
