Skip to content

Introduce path-based PR routing via CODEOWNERS #279

@em3s

Description

@em3s

Current state

.github/CODEOWNERS routes every PR through a single fallback owner. Activity patterns differ by area, but routing does not reflect that.

Proposal

Adopt a path-based CODEOWNERS so PRs are routed to the maintainer most active in the area they touch. Paths without a specific entry continue to fall through to the fallback.

This is the routing model used by modern peer-maintainer OSS projects — areas are organic, codified for routing convenience, not authority.

This is a routing change, not a governance change. All Maintainers continue to have equal authority per GOVERNANCE.md. Each path entry is opt-in — a maintainer is registered only with their consent.

Examples

# Fallback (applies when no specific entry matches)
*                       @<handle>

# Whole directory
/<dir>/                 @<handle>

# Subdirectory
/<dir>/<sub>/           @<handle>

# Multiple owners on one path (both auto-tagged for review)
/<dir>/                 @<handle-a> @<handle-b>

# File-extension pattern
*.md                    @<handle>

The last matching pattern wins. By convention, place broad patterns first and specific patterns below.

Plan

Add paths one at a time via small PRs. Each PR adds its entry only after the maintainer being added has consented. The first PR also adds a top-of-file comment noting that this file is for advisory routing only — semantics change if branch protection is later set to require code-owner approval.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions