@@ -11,7 +11,7 @@ Thank you for your interest in contributing to har-capture!
1111 cd har-capture
1212 ```
1313
14- 2 . ** Create a virtual environment**
14+ 1 . ** Create a virtual environment**
1515
1616 ``` bash
1717 python -m venv .venv
@@ -20,19 +20,26 @@ Thank you for your interest in contributing to har-capture!
2020 .venv\S cripts\a ctivate # Windows
2121 ```
2222
23- 3 . ** Install in development mode**
23+ 1 . ** Install in development mode**
2424
2525 ``` bash
2626 pip install -e " .[dev,full]"
2727 ```
2828
29- 4 . ** Install pre-commit hooks**
29+ 1 . ** Install pre-commit hooks**
3030
3131 ``` bash
3232 pre-commit install
3333 pre-commit install --hook-type commit-msg
34+ pre-commit install --hook-type pre-push
3435 ```
3536
37+ This installs:
38+
39+ - ** pre-commit** : Runs ruff lint/format on staged files
40+ - ** commit-msg** : Validates commit message format
41+ - ** pre-push** : Runs full test suite before push
42+
3643## Code Quality Standards
3744
3845This project enforces strict quality standards:
@@ -96,6 +103,7 @@ type(scope): description
96103```
97104
98105Types:
106+
99107- ` feat ` : New feature
100108- ` fix ` : Bug fix
101109- ` docs ` : Documentation only
@@ -106,6 +114,7 @@ Types:
106114- ` chore ` : Maintenance tasks
107115
108116Examples:
117+
109118```
110119feat(sanitization): add WiFi credential detection
111120fix(cli): handle missing output directory
@@ -116,30 +125,38 @@ test(validation): add PII detection tests
116125## Pull Request Process
117126
1181271 . ** Create a branch** from ` main ` :
128+
119129 ``` bash
120130 git checkout -b feat/my-feature
121131 ```
122132
123- 2 . ** Make your changes** following the code standards above
133+ 1 . ** Make your changes** following the code standards above
134+
135+ 1 . ** Run all checks locally** :
124136
125- 3 . ** Run all checks locally** :
126137 ``` bash
138+ # One command to run everything CI runs:
139+ ./scripts/ci-local.sh
140+
141+ # Or run each check separately:
127142 pre-commit run --all-files
128143 pytest
129144 mypy src/
130145 ```
131146
132- 4 . ** Push and create a PR** :
147+ 1 . ** Push and create a PR** :
148+
133149 ``` bash
134150 git push -u origin feat/my-feature
135151 ```
136152
137- 5 . ** Fill out the PR template** with:
153+ 1 . ** Fill out the PR template** with:
154+
138155 - Description of changes
139156 - Related issues
140157 - Testing performed
141158
142- 6 . ** Wait for CI** to pass and address any feedback
159+ 1 . ** Wait for CI** to pass and address any feedback
143160
144161## Project Structure
145162
@@ -158,10 +175,10 @@ har-capture/
158175## Adding New Features
159176
1601771 . ** Write tests first** (TDD encouraged)
161- 2 . ** Add type hints** to all functions
162- 3 . ** Add docstrings** (Google style)
163- 4 . ** Update CHANGELOG.md** under ` [Unreleased] `
164- 5 . ** Update README.md** if adding user-facing features
178+ 1 . ** Add type hints** to all functions
179+ 1 . ** Add docstrings** (Google style)
180+ 1 . ** Update CHANGELOG.md** under ` [Unreleased] `
181+ 1 . ** Update README.md** if adding user-facing features
165182
166183## Dependencies
167184
@@ -177,7 +194,7 @@ har-capture/
177194
178195Thank you for contributing!
179196
180- ---
197+ ______________________________________________________________________
181198
182199## Maintainer Setup
183200
@@ -186,9 +203,11 @@ One-time setup for repository maintainers:
186203### GitHub Repository Settings
187204
1882051 . ** Enable private vulnerability reporting**
206+
189207 - Settings → Code security and analysis → Private vulnerability reporting → Enable
190208
191- 2 . ** Create GitHub Environments**
209+ 1 . ** Create GitHub Environments**
210+
192211 - Settings → Environments → New environment
193212 - Create ` pypi ` (for production releases)
194213 - Create ` test-pypi ` (for test releases)
@@ -198,13 +217,15 @@ One-time setup for repository maintainers:
198217Configure OIDC publishing (no API tokens needed):
199218
2002191 . ** PyPI:** https://pypi.org/manage/account/publishing/
220+
201221 - Add publisher
202222 - Owner: ` solentlabs `
203223 - Repository: ` har-capture `
204224 - Workflow: ` publish.yml `
205225 - Environment: ` pypi `
206226
207- 2 . ** Test PyPI:** https://test.pypi.org/manage/account/publishing/
227+ 1 . ** Test PyPI:** https://test.pypi.org/manage/account/publishing/
228+
208229 - Same settings, environment: ` test-pypi `
209230
210231### Releasing
0 commit comments