Pull Request Guidelines - AvengerDisassemble/KU-connect GitHub Wiki
Pull Request Workflow Guideline
1. Create PR
- Use the PR template (Title, Description, Functional Criteria).
- Check the Checklist (self-review, tests, docs, coding guidelines).
- Specify the Type of Change (Bug fix / New feature / Doc / Other).
- Add Additional Info if there is a breaking change.
2. Review Request
- Tag specific reviewers if needed.
- If no tag, keep it open for general review.
3. Review Guidelines
- Verify changes meet Functional Acceptance Criteria.
- Check code quality: readability, consistency, efficiency.
- Suggest changes with clear reasons if issues are found.
4. Commenting
- Leave a short comment when updating PR.
- Ask if something is unclear.
- Provide clear feedback and suggestions.
Pull Request Template
## Title
[Brief description of the changes]
## Description
- What changes have been made and why
- e.g. Add permission class so only the host can edit an activity
## Functional Acceptance Criteria
- [ ] Feature works as expected
- Detail test cases if needed
- e.g. Host can edit, others get error message
## Checklist
- [ ] Self-review completed
- [ ] Updated documentation (if needed)
- [ ] Code follows Coding Guidelines
## Type of Change
- [ ] Bug fix
- [ ] New feature
- [ ] Documentation update
- [ ] Other (please specify)
## Additional Information
- Breaking change? (Yes/No)
- Other notes: ...
Example:
## Title
Add validation for user email in registration
## Description
- Add `validate_email()` function in `utils.py`
- Check email format before saving user to database
- Raise `ValueError` if email is invalid
## Functional Acceptance Criteria
- [x] `validate_email("[email protected]")` passes
- [x] `validate_email("invalid-email")` raises `ValueError`
- [x] Registration endpoint rejects invalid emails
## Checklist
- [x] Self-review completed
- [x] Added tests for `validate_email()`
- [x] Updated documentation for registration API
- [x] Code follows Coding Guidelines
## Type of Change
- [ ] Bug fix
- [x] New feature
- [ ] Documentation update
- [ ] Other (please specify)
## Additional Information
- Breaking change? No
- Other notes: Only backend change, frontend registration UI not affected