diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 34dd9c6..ce8510c 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -8,9 +8,9 @@ # CI fails if this file drifts from its source, and rejects PRs that # edit this file directly without also editing the yml. -* @aaltshuler +* @aaltshuler @ragnorc -crates/** @aaltshuler +crates/** @aaltshuler @ragnorc docs/** @aaltshuler @ragnorc README.md @aaltshuler @ragnorc AGENTS.md @aaltshuler @ragnorc diff --git a/.github/codeowners-roles.yml b/.github/codeowners-roles.yml index 9fdc8e5..f542b84 100644 --- a/.github/codeowners-roles.yml +++ b/.github/codeowners-roles.yml @@ -19,9 +19,10 @@ roles: engineering: description: > All production code under crates/**. Engine, CLI, server, - compiler. Single owner; review must come from this person. + compiler. Either named member can approve. members: - aaltshuler + - ragnorc docs: description: > diff --git a/docs/dev/codeowners.md b/docs/dev/codeowners.md index edd355d..160f9f4 100644 --- a/docs/dev/codeowners.md +++ b/docs/dev/codeowners.md @@ -8,7 +8,7 @@ This setup gives every role change a reviewable PR and a permanent in-repository | Role | Members | Scope | |---|---|---| -| `engineering` | `@aaltshuler` | All code under `crates/**`, repository infrastructure, default for unmapped paths | +| `engineering` | `@aaltshuler`, `@ragnorc` | All code under `crates/**`, repository infrastructure, default for unmapped paths | | `docs` | `@aaltshuler`, `@ragnorc` | `docs/**`, README.md, AGENTS.md, CLAUDE.md, SECURITY.md | GitHub treats multiple owners in a CODEOWNERS line as **"any one of them satisfies the review requirement"**. For docs, either named member can approve. To require N distinct approvers on a specific path, layer a CI check on top (not currently configured).