diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index b9bfa0b..5b2442c 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,28 +1,127 @@ -## Description + -Please include a summary of the change and which issue is fixed. Include relevant motivation and context. +## 📝 Description -Fixes # (issue number) + -## Type of change +Fixes # -Please delete options that are not relevant. +--- -- [ ] Bug fix (non-breaking change which fixes an issue) -- [ ] New feature (non-breaking change which adds functionality) -- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) -- [ ] Documentation update +## 🏷️ Type of Change -## How Has This Been Tested? + -Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. +- [ ] 🐛 Bug fix (non-breaking — fixes an issue) +- [ ] ✨ New feature (non-breaking — adds functionality) +- [ ] 💥 Breaking change (alters existing behaviour or API contract) +- [ ] ♻️ Refactor (improves code without changing behaviour) +- [ ] 🔒 Security fix (patches a vulnerability or hardens auth/encryption) +- [ ] 🎨 UI / Styling (visual or layout changes only) +- [ ] 📝 Documentation update +- [ ] ⚙️ Config / CI / tooling change -## Checklist: +--- -- [ ] My code follows the style guidelines of this project +## 🧪 How Has This Been Tested? + + + +### Test Environment +| | | +|---|---| +| **OS** | | +| **Browser & Version** | | +| **Node.js Version** | | + +### Steps to Reproduce / Verify + +1. +2. +3. + +**✅ Expected result:** + +**❌ Result before this PR (for bug fixes):** + +### Test Coverage +- [ ] Manually tested end-to-end on local dev +- [ ] Unit tests added or updated +- [ ] All existing tests pass locally +- [ ] No regressions in related features + +--- + +## 🖼️ Screenshots + + + +
+Click to expand + +| Before | After | +|--------|-------| +| | | + +
+ +--- + +## 🔒 Security Checklist (Gsecure-specific) + +- [ ] No vault data, passwords, or auth tokens are logged or exposed +- [ ] No new API routes added without middleware protection +- [ ] Encryption / decryption logic is unchanged or explicitly reviewed +- [ ] No secrets or API keys are hardcoded +- [ ] User input is validated and sanitised + +--- + +## ✅ Checklist + +### Code Quality - [ ] I have performed a self-review of my own code +- [ ] My code follows the style guidelines of this project - [ ] I have commented my code, particularly in hard-to-understand areas -- [ ] I have made corresponding changes to the documentation -- [ ] My changes generate no new warnings +- [ ] My changes generate no new warnings (`npm run lint` passes) +- [ ] No leftover `console.log`, debug code, or commented-out blocks + +### Testing - [ ] I have added tests that prove my fix is effective or that my feature works -- [ ] New and existing unit tests pass locally with my changes \ No newline at end of file +- [ ] New and existing unit tests pass locally with my changes + +### Documentation +- [ ] I have made corresponding changes to the documentation +- [ ] New API endpoints or changed behaviour are documented + +### PR Hygiene +- [ ] PR title follows [Conventional Commits](https://www.conventionalcommits.org/) (`feat:`, `fix:`, `docs:`…) +- [ ] This PR is focused on a single concern — no unrelated changes bundled in +- [ ] Branch is up-to-date with `main` + +--- + +## 👁️ Reviewer Notes + + + + \ No newline at end of file