Deployment Workflow
Never push directly to the main branch. All work must be done on feature branches.
Create a new branch for every feature, fix, or task using these prefixes:
feat/feature-slug # New features
fix/bug-description # Bug fixes
chore/task-name # Maintenance, refactoring, deps Example:
git checkout -b feat/slack-integration
git checkout -b fix/login-error
git checkout -b chore/update-deps Deployment Flow
Create and push your branch:
git push origin feat/your-featureTest your changes locally using
pnpm devOpen a pull request when ready for review
Wilson pulls your branch and tests locally
After code review and approval, merge to main → automatic production deployment to Railway
All testing happens locally before merging. No preview deployments are used.
Code Review Process
All code requires review before merging:
Push your branch and open a PR on GitHub
Tag Wilson for review
Wilson pulls your branch and tests locally
Address feedback and push updates
Once approved, Wilson or you can merge
Keep PRs small and focused. One feature or fix per branch makes reviews faster.
Main Branch Protection
The main branch is protected and deploys directly to production. Only merge via approved pull requests, direct pushes are blocked.
Troubleshooting
Can't push to main? This is intentional. Create a branch and open a PR.
Local tests passing but production fails? Check Railway logs in the dashboard for env var mismatches or build errors. Contact Wilson.
Merge conflicts? Pull latest main into your branch: git pull origin main, resolve conflicts, then push.