Development workflow standards for maintaining code quality and collaboration
Reference: CONST-P12 (Deployment & DevOps), CONST-P14 (Collaboration), CONST-P6 (Code Quality)
This document establishes repository management standards for the Wedding RSVP project, ensuring consistent development practices, code quality, and efficient collaboration workflows.
main
: Production-ready code, always deployabledevelop
: Integration branch for features, pre-production testingrelease/v*
: Release preparation branches (when needed)hotfix/*
: Critical production fixesfeature/brief-description
or feat/brief-description
feature/rsvp-form
, feat/admin-dashboard
, feature/mobile-responsive
main:
- Require pull request reviews (minimum 1)
- Require status checks to pass
- Require branches to be up to date
- Restrict pushes to main
develop:
- Require pull request reviews
- Allow force pushes (for clean history)
- Require status checks
<type>(<scope>): <description>
<optional body>
<optional footer>
# Feature development
feat(rsvp): add guest dietary restrictions field
feat(admin): implement RSVP analytics dashboard
feat(ui): add loading states to all forms
# Bug fixes
fix(validation): correct email format validation regex
fix(responsive): adjust mobile navigation menu positioning
fix(api): handle empty RSVP response gracefully
# Documentation and maintenance
docs(readme): update setup instructions
style(components): apply consistent spacing
refactor(types): consolidate RSVP type definitions
<type>: Brief description of changes
(Include visual proof of changes when applicable)
Closes #123, Fixes #456 ```
# GitHub Actions pipeline
checks:
- TypeScript compilation
- ESLint static analysis
- Prettier formatting
- Build verification
- Test suite execution (when implemented)
- Bundle size analysis
# 1. Start feature
git checkout develop
git pull origin develop
git checkout -b feature/new-rsvp-field
# 2. Development cycle
# Make changes...
git add .
git commit -m "feat(rsvp): add dietary restrictions field"
# 3. Stay current (regularly)
git checkout develop
git pull origin develop
git checkout feature/new-rsvp-field
git rebase develop
# 4. Push and create PR
git push origin feature/new-rsvp-field
# Create PR via GitHub UI
# 5. After PR approval
git checkout develop
git pull origin develop
git branch -d feature/new-rsvp-field
# 1. Create hotfix from main
git checkout main
git pull origin main
git checkout -b hotfix/critical-bug-fix
# 2. Fix the issue
git add .
git commit -m "fix(critical): resolve RSVP submission error"
# 3. Create PR to main
git push origin hotfix/critical-bug-fix
# Create PR to main via GitHub UI
# 4. Also merge to develop
git checkout develop
git pull origin develop
git merge hotfix/critical-bug-fix
git push origin develop
git branch -d hotfix/critical-bug-fix
# 1. Create release branch
git checkout develop
git pull origin develop
git checkout -b release/v1.2.0
# 2. Final preparations
# Update version numbers, documentation
git add .
git commit -m "chore(release): prepare v1.2.0"
# 3. Create PR to main
git push origin release/v1.2.0
# Create PR to main
# 4. After merge, tag the release
git checkout main
git pull origin main
git tag -a v1.2.0 -m "Release v1.2.0"
git push origin v1.2.0
# 5. Merge back to develop
git checkout develop
git merge main
git push origin develop
git branch -d release/v1.2.0
bug
, feature
, enhancement
, documentation
critical
, high
, medium
, low
ready
, in-progress
, blocked
, needs-review
ui
, api
, admin
, auth
, rsvp
, content
design-system
, mobile
, accessibility
## Bug Report Template
**Describe the bug**
A clear description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior**
A clear description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Device Information:**
- Device: [e.g. iPhone 12, Desktop]
- Browser: [e.g. chrome, safari]
- Version: [e.g. 22]
**Additional context**
Add any other context about the problem here.
## Feature Request Template
**Is your feature request related to a problem?**
A clear description of what the problem is.
**Describe the solution you'd like**
A clear description of what you want to happen.
**Describe alternatives you've considered**
Alternative solutions or features you've considered.
**Wedding Context**
How does this feature enhance the wedding RSVP experience?
**Additional context**
Add any other context or screenshots about the feature request.
specification.md
with new feature requirements# Start work
git checkout develop && git pull origin develop
git checkout -b feature/your-feature-name
# Regular commits
git add .
git commit -m "type(scope): description"
# Stay current
git fetch origin
git rebase origin/develop
# Create PR
git push origin feature/your-feature-name
For critical issues:
Remember: These rules exist to maintain quality and enable efficient collaboration on this special wedding project. When in doubt, prioritize user experience and code maintainability.