Skip to content

Commit 9b26282

Browse files
committed
docs: clarify required-context count + document solo-owner admin-merge policy
1 parent f966161 commit 9b26282

3 files changed

Lines changed: 16 additions & 4 deletions

File tree

CONTRIBUTING.md

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ main ◄── release PR ◄── develop ◄── feat/123-short-name
1010
◄── chore/125-config-change
1111
```
1212

13-
- `main` is the release line. Protected: 15 required status checks, code-owner approval, no force pushes.
14-
- `develop` is the integration branch. Same gates, less strict (PRs don't need rebases).
13+
- `main` is the release line. Protected: **21 required status checks**, code-owner approval, no force pushes. (One additional non-required check, `Draft next release` from release-drafter, runs informationally on PRs to `main` and shows up in the rollup but is not gated.)
14+
- `develop` is the integration branch. Same 21 gates, less strict (PRs don't need rebases).
1515
- Feature branches are short-lived and named `<type>/<issue-number>-<kebab-title>`. Open one issue per branch so the project board stays usable.
1616

1717
## Commit messages
@@ -43,6 +43,18 @@ The subject is **lowercase** after the colon. Title Case prose (`Add the thing`)
4343
- **Screenshots** (UI changes only)
4444
5. Wait for green CI + a code-owner review before merging.
4545

46+
### Solo-owner merge policy
47+
48+
This repo runs with a single code owner (`* @constk` in `CODEOWNERS`). GitHub forbids a PR author from approving their own PR, so the standard "1 code-owner review" gate cannot be satisfied without an admin override. While in this state, the **intended workflow is**:
49+
50+
```sh
51+
gh pr merge <N> --admin --squash --delete-branch
52+
```
53+
54+
…for `feat:` / `fix:` / `chore:` PRs, and `--admin --merge` (preserves history) for `release:` PRs. The `enforce_admins: false` line in `.github/branch-protection/{develop,main}.json` is the documented escape hatch — admin merge here is the policy, not a deviation from it.
55+
56+
When a second collaborator joins, drop the `--admin` flag and adopt standard PR review. Update this section + `CODEOWNERS` in the same PR.
57+
4658
## Local pre-push gate
4759

4860
```sh

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "harness-python-react"
3-
version = "0.2.8"
3+
version = "0.2.9"
44
description = "Production-quality LLM-driven coding harness — Python (FastAPI) backend, Vite + React + TypeScript frontend."
55
readme = "README.md"
66
requires-python = ">=3.14"

uv.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)