chore: make CODEOWNERS resolvable and move it to .github/

Merged
YA
2mo ago
+15-10

What

Replace the unresolvable CODEOWNERS in this repository with one GitHub can actually enforce, and move it from the repository root to .github/CODEOWNERS.

Why

GET /repos/wave-av/sdk-python/codeowners/errors on main currently reports 3 "Unknown owner" error(s) - every owner line in the existing file names a team that either does not exist in this organization or has no write access to this repository. GitHub silently ignores such lines, which means:

  • no reviewer is ever auto-requested on pull requests, and
  • any branch rule that requires Code Owner review can never be satisfied, because there is no code owner to give it.

That second point is the operational problem: a PR gated on Code Owner approval would sit unmergeable without an admin override.

Change

  • CODEOWNERS (root) -> .github/CODEOWNERS. GitHub checks .github/ first, then the root, then docs/; keeping a single file in the highest-precedence location avoids a stale shadow copy.
  • Default owner is the organization owner (@yakimoto), whose permission on this repository was verified via GET /repos/wave-av/sdk-python/collaborators/yakimoto/permission -> admin. No organization team currently holds write on this repository, so a team handle would be ignored exactly like the old one. When a team is granted write here, swapping the handle is a one-line follow-up.
  • Explicit entries for the release-critical surfaces that exist in this repository (CI workflows, package manifest, release scripts, and the ownership file itself), so those paths keep an owner even if the default rule is later loosened.

Resulting file:

# CODEOWNERS - GitHub auto-requests review from the listed owners on matching paths.
# Every handle here must be a user or team with write access to this repository;
# an unresolvable handle is silently ignored and any "require Code Owner review"
# rule becomes unsatisfiable. Validate after editing:
#   gh api repos/wave-av/sdk-python/codeowners/errors    # expect {"errors":[]}
# Later rules take precedence over earlier ones.

# Default owner for everything.
*                       @yakimoto

# Release-critical surfaces: CI/CD, package manifest, release tooling, ownership.
/.github/workflows/    @yakimoto
/pyproject.toml         @yakimoto
/scripts/release/       @yakimoto
/.github/CODEOWNERS     @yakimoto

Verification

  • gh api repos/wave-av/sdk-python/codeowners/errors?ref=chore/codeowners on this branch returns: {"errors":[]}
  • Head SHA: 2b7bb7e054f881c1631b654bb1cdabbad88ce483

Notes

  • GitHub Actions is currently billing-locked for this organization, so no workflow runs will appear on this PR; the CODEOWNERS validation above is done through the REST API, which does not depend on Actions.
  • This PR does not change branch protection or rulesets. It only makes the existing ownership file resolvable.
  • No secrets, tokens, or credentials are involved; the file contains a GitHub login and path globs only.

🤖 Generated with Claude Code


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.


[!NOTE]
Low Risk
Governance-only change to review routing; no application code, secrets, or runtime behavior.

Overview
Fixes broken GitHub code ownership by replacing unresolvable team handles (@wave-av/core-team, etc.) with @yakimoto, a verified admin on this repo, so auto-review requests and “require Code Owner review” rules can actually be satisfied.

Moves ownership from root CODEOWNERS to .github/CODEOWNERS (highest precedence) and drops the old root file to avoid a stale duplicate. The new file adds path-specific owners for CI workflows, pyproject.toml, release scripts, and the CODEOWNERS file itself, plus inline docs on validating handles via the codeowners/errors API.

Reviewed by Cursor Bugbot for commit 2b7bb7e054f881c1631b654bb1cdabbad88ce483. Bugbot is set up for automated code reviews on this repo. Configure here.

Summary by Sourcery

Make repository code ownership enforceable by relocating CODEOWNERS and assigning valid ownership across the repository and release-critical files.

Bug Fixes:

  • Make GitHub code ownership resolvable so pull requests can receive valid automatic reviewer requests and satisfy code-owner review requirements.

Enhancements:

  • Move the CODEOWNERS file to .github/CODEOWNERS and define a repository-wide owner plus explicit ownership for release-critical paths.