Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
* @googleads/google-ads-python-codereview
@googleads/google-ads-python-codereview

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bug: this line no longer has a file pattern, so it owns nothing.

CODEOWNERS syntax is <pattern> <owner> [<owner>...]. Dropping the leading * makes GitHub parse @googleads/google-ads-python-codereview as the pattern (a path literally named that) with zero owners. GitHub considers "pattern with no owners" valid syntax (it's how you un-own a subpath), which is why GET /repos/googleads/google-ads-python/codeowners/errors?ref=Fix-codeowners (and the same for the sibling google-ads-ruby#567 and google-ads-dotnet#672) returns {"errors": []} — but the effect is that no file in the repo has a code owner.

Consequences on main, which has require_code_owner_reviews: true:

  • Reviewer auto-assignment for both teams stops.
  • The "require review from Code Owners" branch-protection check becomes vacuously satisfied on every PR (no owner matches → no owner review required), so the gate is silently removed.

Suggested fix (single line, both teams):

Suggested change
@googleads/google-ads-python-codereview
* @googleads/google-ads-python-codereview @googleads/googleads-release-rotation

FYI the same change was merged in google-ads-java#920 earlier today with the same shape; it's worth a follow-up fix there too.

@googleads/googleads-release-rotation

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Even once the * pattern is restored, don't split the two teams across two * lines. CODEOWNERS uses last-match-wins per path, so

* @googleads/google-ads-python-codereview
* @googleads/googleads-release-rotation

would make only googleads-release-rotation the owner. Put both owners on the one * line (see suggestion on line 1) and delete this line.

Suggested change
@googleads/googleads-release-rotation

Loading