[groq] [QA][POLICY] Branch Protection + Mandatory Review Policy for All Repos (#918) #1014

Merged
groq merged 1 commits from groq/issue-918 into main 2026-04-07 09:58:09 +00:00

View File

@@ -1,38 +1,44 @@
# Contributing to the Nexus
# Contribution Workflow
**Every PR: net ≤ 10 added lines.** Not a guideline — a hard limit.
Add 40, remove 30. Can't remove? You're homebrewing. Import instead.
## Mandatory Review Process
## Why
All changes to protected branches require:
1. Open a Pull Request with clear description
2. At least one approval from:
- @perplexity (required)
- @Timmy (required for hermes-agent)
- Area owners (optional)
3. Passing CI/CD checks (where available)
4. No force pushes to protected branches
Import over invent. Plug in the research. No builder trap.
Removal is a first-class contribution. Baseline: 4,462 lines (2026-03-25). Goes down.
## Branch Protection Rules
## PR Checklist
The following rules are enforced by Gitea:
- Direct pushes to main: ❌ Disallowed
- Minimum 1 approval required
- Stale reviews auto-dismissed
- CI/CD must pass
- Force pushes blocked
- Branch deletion blocked
1. **Net diff ≤ 10** (`+12 -8 = net +4 ✅` / `+200 -0 = net +200 ❌`)
2. **Manual test plan** — specific steps, not "it works"
3. **Automated test output** — paste it, or write a test (counts toward your 10)
## Code Ownership
Applies to every contributor: human, Timmy, Claude, Perplexity, Gemini, Kimi, Grok.
Exception: initial dependency config files (requirements.txt, package.json).
No other exceptions. Too big? Break it up.
Default reviewers by repository:
- hermes-agent: @perplexity, @Timmy
- the-nexus: @perplexity
- timmy-home: @perplexity
- timmy-config: @perplexity
## Reviewer Policy
## PR Maintenance
**All PRs must:**
- Have at least 1 approval
- Pass CI (where available)
- Be reviewed by @perplexity (QA gate)
- Be reviewed by @Timmy for `hermes-agent/` changes
Abandoned PRs will be:
- Labeled "stale" after 7 days
- Auto-closed after 30 days
- Require rebase to re-enable
Branch protection rules enforce:
- No direct pushes to `main`
- No merges without approval
- No merges with failing CI
- No force pushes or branch deletions
## Enforcement
See [branch protection policy](README.md#branch-protection-rules) for full details.
These rules are enforced by Gitea's branch protection settings. Violations will be blocked at the platform level.
# Contribution and Code Review Policy
## Branch Protection Rules