|
| 1 | +# Repository Standards |
| 2 | + |
| 3 | +This document defines reusable standards for repository governance, naming, and release hygiene. |
| 4 | + |
| 5 | +## Branch strategy |
| 6 | + |
| 7 | +- Default branch: `main` |
| 8 | +- Short-lived feature branches: |
| 9 | + - `feat/<short-description>` |
| 10 | + - `fix/<short-description>` |
| 11 | + - `chore/<short-description>` |
| 12 | + - `docs/<short-description>` |
| 13 | + |
| 14 | +## Commit style |
| 15 | + |
| 16 | +Recommended commit prefixes: |
| 17 | + |
| 18 | +- `feat:` new functionality |
| 19 | +- `fix:` bug fixes |
| 20 | +- `docs:` documentation-only changes |
| 21 | +- `chore:` maintenance and tooling |
| 22 | +- `refactor:` internal improvements |
| 23 | +- `test:` test additions/updates |
| 24 | + |
| 25 | +## Pull request standards |
| 26 | + |
| 27 | +- Keep changes focused and reviewable. |
| 28 | +- Link related issue(s) in PR description. |
| 29 | +- Include validation steps and expected outcomes. |
| 30 | +- Update docs/changelog when behavior changes. |
| 31 | + |
| 32 | +## Label taxonomy |
| 33 | + |
| 34 | +Use a minimal, reusable label set: |
| 35 | + |
| 36 | +- Type labels: |
| 37 | + - `type: bug` |
| 38 | + - `type: feature` |
| 39 | + - `type: docs` |
| 40 | + - `type: chore` |
| 41 | +- Priority labels: |
| 42 | + - `priority: p0` |
| 43 | + - `priority: p1` |
| 44 | + - `priority: p2` |
| 45 | +- Status labels: |
| 46 | + - `status: needs-triage` |
| 47 | + - `status: blocked` |
| 48 | + - `status: ready` |
| 49 | + |
| 50 | +## Milestone strategy |
| 51 | + |
| 52 | +Recommended milestone model: |
| 53 | + |
| 54 | +- Time-based milestones (e.g., `2026-Q3`) for ongoing teams. |
| 55 | +- Version-based milestones (e.g., `v1.4.0`) for release-driven projects. |
| 56 | +- Keep milestone scope small enough for predictable closure. |
| 57 | + |
| 58 | +## Release strategy |
| 59 | + |
| 60 | +- Follow Semantic Versioning. |
| 61 | +- Maintain `CHANGELOG.md` for notable changes. |
| 62 | +- Tag releases with `vX.Y.Z`. |
| 63 | + |
| 64 | +## Documentation standards |
| 65 | + |
| 66 | +- Use clear headings (`#`, `##`, `###`) and concise sections. |
| 67 | +- Prefer task-oriented instructions for onboarding. |
| 68 | +- Keep placeholders explicit (`OWNER`, `REPO`, `security@example.com`). |
0 commit comments