# 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
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/settings/config.py          @DataDog/python-guild  @DataDog/apm-sdk-api-python
docs/                               @DataDog/python-guild
tests/utils.py                      @DataDog/python-guild
tests/suitespec.yml                 @DataDog/python-guild  @DataDog/apm-core-python
tests/suitespec.py                  @DataDog/python-guild  @DataDog/apm-core-python
scripts/bump_ddtrace.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

# Debugger
ddtrace/debugging/                  @DataDog/debugger-python
ddtrace/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
.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/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
tests/contrib/*/test*appsec*.py     @DataDog/asm-python
scripts/iast/*                      @DataDog/asm-python

# Profiling
ddtrace/profiling                   @DataDog/profiling-python
ddtrace/settings/profiling.py       @DataDog/profiling-python
ddtrace/internal/datadog/profiling  @DataDog/profiling-python
tests/profiling                     @DataDog/profiling-python
tests/profiling_v2                  @DataDog/profiling-python
.gitlab/tests/profiling.yml         @DataDog/profiling-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_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
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_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
.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_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

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

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

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

# Serverless
tests/internal/test_serverless.py   @DataDog/apm-core-python @DataDog/apm-serverless
tests/contrib/aws_lambda            @DataDog/apm-serverless

# Data Streams Monitoring
ddtrace/internal/datastreams        @DataDog/data-streams-monitoring
tests/datastreams                   @DataDog/data-streams-monitoring
