Add CI/CD pipeline and SDLC docs

This commit is contained in:
Greg Hendrickson
2026-01-27 15:13:28 +00:00
parent 5135f0dd4d
commit f3a95d8767
4 changed files with 203 additions and 0 deletions

52
CONTRIBUTING.md Normal file
View File

@@ -0,0 +1,52 @@
# Contributing to ShellMate
Thanks for your interest in contributing! 🎉
## Branch Strategy
```
feature/* ──→ develop ──→ master
│ │
staging production
```
- **`develop`** — Default branch, all PRs target here
- **`master`** — Production releases only
- **`feature/*`** — Feature branches off develop
## Development Flow
1. Fork the repo
2. Create a feature branch from `develop`:
```bash
git checkout develop
git pull origin develop
git checkout -b feature/my-feature
```
3. Make your changes
4. Run tests: `pytest tests/ -v`
5. Run linting: `ruff check src/`
6. Push and create a PR to `develop`
## Code Style
- Python 3.11+
- Type hints required
- Ruff for linting
- 100 char line limit
## Commit Messages
Use conventional commits:
- `feat:` New feature
- `fix:` Bug fix
- `docs:` Documentation
- `refactor:` Code refactor
- `test:` Tests
- `chore:` Maintenance
## Release Process
1. PRs merged to `develop` deploy to staging
2. When ready, merge `develop` → `master`
3. Master deploys to production automatically