docs(contrib): align main-first PR base and overlap attribution
This commit is contained in:
parent
0aa4f94c86
commit
dd51f6119c
3
.github/pull_request_template.md
vendored
3
.github/pull_request_template.md
vendored
@ -2,7 +2,7 @@
|
||||
|
||||
Describe this PR in 2-5 bullets:
|
||||
|
||||
- Base branch target (`main` or `dev`; direct `main` PRs are allowed):
|
||||
- Base branch target (`main` by default; use `dev` only when maintainers explicitly request integration batching):
|
||||
- Problem:
|
||||
- Why it matters:
|
||||
- What changed:
|
||||
@ -27,6 +27,7 @@ Describe this PR in 2-5 bullets:
|
||||
- Closes #
|
||||
- Related #
|
||||
- Depends on # (if stacked)
|
||||
- Existing overlapping PR(s) reviewed for this issue (list `#<pr> by @<author>` or `N/A`):
|
||||
- Supersedes # (if replacing older PR)
|
||||
- Linear issue key(s) (required, e.g. `RMN-123`):
|
||||
- Linear issue URL(s):
|
||||
|
||||
@ -17,7 +17,8 @@ Welcome — contributions of all sizes are valued. If this is your first contrib
|
||||
- Fork the repository and clone your fork
|
||||
- Create a feature branch (`git checkout -b fix/my-change`)
|
||||
- Make your changes and run `cargo fmt && cargo clippy && cargo test`
|
||||
- Open a PR against `dev` using the PR template
|
||||
- Open a PR against `main` using the PR template (`dev` is used only when maintainers explicitly request integration batching)
|
||||
- If the issue already has an open PR, coordinate there first or mark your PR with `Supersedes #...` plus attribution when replacing it
|
||||
|
||||
4. **Start with Track A.** ZeroClaw uses three [collaboration tracks](#collaboration-tracks-risk-based) (A/B/C) based on risk. First-time contributors should target **Track A** (docs, tests, chore) — these require lighter review and are the fastest path to a merged PR.
|
||||
|
||||
|
||||
@ -113,6 +113,8 @@ Maintain these branch protection rules on `dev` and `main`:
|
||||
### 4.1 Step A: Intake
|
||||
|
||||
- Contributor opens PR with full `.github/pull_request_template.md`.
|
||||
- Normal contributor PR base is `main` by default; use `dev` only when maintainers explicitly request integration batching.
|
||||
- If an issue already has open community PRs, reviewers/maintainers must acknowledge overlap and either continue that thread or document supersede rationale.
|
||||
- `PR Labeler` applies scope/path labels + size labels + risk labels + module labels (for example `channel:telegram`, `provider:kimi`, `tool:shell`) and contributor tiers by merged PR count (`trusted` >=5, `experienced` >=10, `principal` >=20, `distinguished` >=50), while de-duplicating less-specific scope labels when a more specific module label is present.
|
||||
- For all module prefixes, module labels are compacted to reduce noise: one specific module keeps `prefix:component`, but multiple specifics collapse to the base scope label `prefix`.
|
||||
- Label ordering is priority-first: `risk:*` -> `size:*` -> contributor tier -> module/path labels.
|
||||
@ -227,6 +229,7 @@ We do **not** require contributors to quantify AI-vs-human line ownership.
|
||||
### 8.2 Backlog pressure controls
|
||||
|
||||
- If a new PR replaces an older open PR, require `Supersedes #...` and close the older one after maintainer confirmation.
|
||||
- Replacement PRs must include attribution for materially integrated community work and explicitly state what was not carried forward.
|
||||
- Mark dormant/redundant PRs with `stale-candidate` or `superseded` to reduce duplicate review effort.
|
||||
|
||||
### 8.3 Issue triage discipline
|
||||
|
||||
Loading…
Reference in New Issue
Block a user