Desenvolvimento
GitHub — Convenções
Branches, commits e pull requests
Repositório
vendee-turborepo (privado) — hospedado na organização usevendee.
Branch Strategy
| Branch | Uso |
|---|---|
main | Branch de produção — sempre deployável |
feat/<ISSUE-ID>-descricao | Nova funcionalidade |
fix/<ISSUE-ID>-descricao | Correção de bug |
refactor/<ISSUE-ID>-descricao | Refatoração |
Sem branch develop ou staging. O fluxo é direto: feature branch → PR → main.
Commit Messages
Formato convencional com ID da issue:
<prefixo>: descrição curta (ISSUE-ID)Prefixos válidos:
| Prefixo | Uso |
|---|---|
feat | Funcionalidade nova |
fix | Correção de bug |
refactor | Refatoração sem mudança de comportamento |
chore | Tarefas de infra, build, deps |
docs | Alterações de documentação |
style | Formatação, espaços, ponto-e-vírgula |
test | Adicionar ou corrigir testes |
Exemplos:
feat: add activity status border to deal card (CRM-1)
fix: deal card badge not updating on stage change (CRM-2)
refactor: extract pipeline filters into hook (CRM-4)PR Template
## What
Brief description of what was implemented.
## Issue
Ref CRM-XX
## How to test
Steps to verify the implementation manually.No corpo do PR usamos Ref CRM-XX, não Closes CRM-XX. A integração GitHub → Linear move o status conforme os eventos do PR, mas a issue só vai para Done quando o responsável testa na preview e move manualmente. Merge sozinho não fecha a issue.
Automação de status (GitHub → Linear)
| Evento | Status |
|---|---|
| Branch criada | In Progress |
| PR aberto | In Progress |
| PR mergeado | In Review |
| Rodrigo testa e aprova | Done (manual) |
Regras
- Uma issue = um branch = um PR. Nunca misturar issues no mesmo branch.
- PR sempre aponta para
main. - Incluir
Ref <ISSUE-ID>na descrição (nãoCloses). - Nunca fazer push direto na
main. - Se a tarefa crescer, quebre em mais issues — não empilhe escopo num PR só.
Checklist pré-PR
Antes de abrir o PR, rode localmente:
bun run check-types # tsc -b (project references) — NUNCA tsc --noEmit diretamente
bun run lint # zero warnings
bun run build # build completobun run check-types usa tsc -b por causa das project references do monorepo. Rodar tsc --noEmit num app isolado pode passar verde mas quebrar o build da Vercel — sempre use o script do package.json.