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