# List of OWNERS files that can be used together with "set noparent". See
# docs/code_reviews.md#owners-file-details for more details.

# Overall project governance.
file://ATL_OWNERS

# Third-party dependency review, see //docs/adding_to_third_party.md
file://third_party/OWNERS

# Security reviews
file://build/fuchsia/SECURITY_OWNERS
file://chromeos/SECURITY_OWNERS
file://content/browser/CHILD_PROCESS_SECURITY_POLICY_OWNERS
file://ipc/SECURITY_OWNERS
file://net/base/SECURITY_OWNERS
file://sandbox/linux/OWNERS
file://sandbox/mac/OWNERS
file://sandbox/OWNERS
file://sandbox/win/OWNERS
file://third_party/blink/SECURITY_OWNERS

# Privacy reviews
file://tools/traffic_annotation/summary/TRAFFIC_ANNOTATION_OWNERS
file://tools/metrics/ukm/PRIVACY_OWNERS
file://base/metrics/OWNERS

# Blink API owners are responsible for decisions about what APIs Blink should
# expose to the open web.
file://third_party/blink/API_OWNERS

# third_party/blink/web_tests/VirtualTestSuites need special care.
file://third_party/blink/web_tests/VIRTUAL_OWNERS

# Extension related files.
file://chrome/browser/extensions/component_extensions_allowlist/EXTENSION_ALLOWLIST_OWNERS
file://extensions/common/api/API_OWNERS

# This restriction is in place to avoid accidental addition to our top level
# layout files, such as add duplicated assets, or introducing new colors when
# we don't want them.
file://ui/android/java/res/LAYOUT_OWNERS

# Updating policy_templates.json can have drastic effects for systems depending
# on policy definitions (for example, Google's cloud management tools for
# Chrome and Chrome OS).
# The rules are documented at:
# https://sites.google.com/a/chromium.org/dev/developers/how-tos/enterprise/adding-new-policies
file://components/policy/ENTERPRISE_POLICY_OWNERS

# This restriction is in place due to the complicated compliance regulations
# around this code.
file://chrome/android/java/src/org/chromium/chrome/browser/searchwidget/COMPLIANCE_OWNERS

# Notification channels appear in system UI and are persisted forever by
# Android, so should not be added or removed lightly, and the proper
# deprecation and versioning steps must be taken when doing so.
file://chrome/browser/notifications/android/java/src/org/chromium/chrome/browser/notifications/channels/NOTIFICATION_CHANNEL_OWNERS

# The Weblayer API is supposed to be stable and will be used outside of the
# chromium repository.
file://weblayer/API_OWNERS

# New features for lock/login UI on Chrome OS need to work stably in all corner
# cases.
file://ash/login/LOGIN_LOCK_OWNERS

# Changes to the CQ/CI configuration can have a significant impact on infra cost
# and performance. Approval should be limited to a small subset of the users
# that can make infra changes.
file://infra/config/groups/cq-usage/CQ_USAGE_OWNERS
file://infra/config/groups/sheriff-rotations/CHROMIUM_OWNERS

# Origin Trials owners are responsible for determining trials that need to be
# completed manually.
file://third_party/blink/common/origin_trials/OT_OWNERS

# New notifiers added to //ash/constants/notifier_catalogs.h and 
# //ash/constants/quick_settings_catalogs.h should be reviewed
# by //ash/system owners to ensure that the correct notifier is being used.
file://ash/system/OWNERS

# WebUI surfaces are user visible and frequently are kept around indefinitely.
# New WebUI additions should be reviewed by WebUI PLATFORM_OWNERS to ensure
# they follow the guidance at https://www.chromium.org/developers/webui
file://ui/webui/PLATFORM_OWNERS
