Contributing
Thanks for helping build Cloudzilla. This page covers the conventions every change is expected to follow.
Branch naming
Branches follow <type>/phase-<number>-<slug>, where type is feat, bug, or tech:
feat/phase-12.3-discussions
bug/phase-9-oauth-callback
Commits
Write commit messages in the imperative mood and keep the subject under ~70 characters. Explain the why in the body when it isn't obvious from the diff — task context belongs in the commit, not in code comments.
Running the suite
Before opening a pull request, apply migrations and run the full test suite locally:
make migrate
go test ./...
make lint
Pull requests
Keep each PR scoped to one phase of work. The merge view offers ff, merge, and squash strategies — squash is the default for feature branches.