GitScrum / Docs

GitScrum PRO Annual — 5k+ SaaS apps via MCP

Todas as Boas Práticas

Boas Práticas de Automação de Workflow

Automatize tarefas repetitivas para focar no trabalho real. Configure regras que mantêm seu processo funcionando suavemente sem intervenção manual.

8 min de leitura

Automação remove fricção e garante consistência. A automação de workflow do GitScrum ajuda equipes a definir regras que executam automaticamente baseadas em gatilhos.

Por Que Automatizar

Manual vs Automatizado

VALOR DA AUTOMAÇÃO:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ PROBLEMAS DO WORKFLOW MANUAL:                               │
│                                                             │
│ "Lembre de mover para Em Review quando PR abrir"          │
│ → Esquece 30% das vezes                                   │
│                                                             │
│ "Atribuir para QA quando desenvolvimento terminar"        │
│ → QA descobre tarde, atrasa teste                         │
│                                                             │
│ "Notificar stakeholders quando feature lançar"            │
│ → Às vezes esquece, stakeholders reclamam                 │
│                                                             │
│ "Fechar tarefas quando PR for mergeado"                   │
│ → Tarefas ficam em status errado por dias                 │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ COM AUTOMAÇÃO:                                              │
│                                                             │
│ PR aberto → Tarefa move para "Em Review"                  │
│           → Automaticamente, toda vez                      │
│                                                             │
│ Tarefa pronta → QA atribuído                              │
│               → Notificação enviada                        │
│               → Instantaneamente, sem esquecer             │
│                                                             │
│ Feature lança → Stakeholders notificados                  │
│               → Release notes atualizadas                  │
│               → Consistente, confiável                     │
│                                                             │
│ AUTOMAÇÃO ECONOMIZA:                                        │
│ • Tempo (sem updates manuais)                             │
│ • Carga mental (sem precisar lembrar)                     │
│ • Erros (sem esquecer)                                    │
│ • Atrasos (execução instantânea)                          │
└─────────────────────────────────────────────────────────────┘

O Que Automatizar

Bons Candidatos para Automação

AUTOMATIZE ISSO:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ TRANSIÇÕES DE STATUS:                                       │
│                                                             │
│ SE tarefa atribuída                                        │
│ ENTÃO mover para "Em Progresso"                           │
│                                                             │
│ SE todas subtarefas completas                              │
│ ENTÃO mover pai para "Pronto para Review"                 │
│                                                             │
│ SE PR mergeado                                              │
│ ENTÃO mover tarefa para "Done"                            │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ ATRIBUIÇÕES:                                                │
│                                                             │
│ SE bug criado com label "frontend"                        │
│ ENTÃO atribuir para @time-frontend                        │
│                                                             │
│ SE tarefa move para "QA"                                  │
│ ENTÃO atribuir para @qa-lead                              │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ NOTIFICAÇÕES:                                               │
│                                                             │
│ SE tarefa vence em 24 horas                               │
│ ENTÃO lembrar assignee                                     │
│                                                             │
│ SE tarefa bloqueada por > 2 dias                          │
│ ENTÃO notificar tech lead                                 │
│                                                             │
│ SE tarefa alta prioridade criada                          │
│ ENTÃO notificar canal                                     │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ LABELS E CAMPOS:                                            │
│                                                             │
│ SE tarefa em "Done" por > 7 dias                          │
│ ENTÃO adicionar label "Pronto para Arquivar"              │
│                                                             │
│ SE tarefa sem assignee após 48h                           │
│ ENTÃO adicionar label "Precisa Dono"                      │
└─────────────────────────────────────────────────────────────┘

O Que Não Automatizar

MANTENHA MANUAL:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ ❌ DECISÕES DE JULGAMENTO:                                 │
│                                                             │
│ "Auto-aprovar se código passar nos testes"                │
│ → Code review requer julgamento humano                    │
│                                                             │
│ "Auto-atribuir baseado em carga de trabalho"              │
│ → Ignora expertise, preferências, contexto                │
│                                                             │
│ "Auto-priorizar baseado em palavras-chave"                │
│ → Prioridade requer entendimento de negócio               │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ ❌ EXCEÇÕES COMPLEXAS:                                     │
│                                                             │
│ "Auto-mover mas exceto se..." (muitas exceções)           │
│ → Regras complexas quebram e confundem                    │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ ❌ PROCESSOS QUE MUDAM:                                    │
│                                                             │
│ "Automatizar processo experimental"                       │
│ → Vai mudar, automação desperdiçada                       │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ ❌ FRICÇÃO VALIOSA:                                        │
│                                                             │
│ "Auto-deploy para produção"                               │
│ → Momento de pausa antes de produção pode ser bom         │
│                                                             │
│ "Auto-aprovar gastos"                                      │
│ → Aprovação manual é checkpoint válido                    │
└─────────────────────────────────────────────────────────────┘

Implementação no GitScrum

Criando Automações

SETUP DE AUTOMAÇÃO
══════════════════

ACESSANDO:
─────────────────────────────────────
Project → Settings → Automations

ESTRUTURA DA AUTOMAÇÃO:
─────────────────────────────────────
1. GATILHO (Quando?)
   ├── Status mudou
   ├── Tarefa criada
   ├── Campo atualizado
   ├── Data de vencimento
   ├── Tempo passou
   └── Evento externo (webhook)

2. CONDIÇÃO (Se? - opcional)
   ├── Tipo é Bug
   ├── Prioridade é Alta
   ├── Label contém "urgente"
   ├── Assignee está vazio
   └── Sprint é atual

3. AÇÃO (Então faça)
   ├── Mudar status
   ├── Atribuir pessoa
   ├── Enviar notificação
   ├── Atualizar campo
   ├── Adicionar label
   └── Criar tarefa linkada

EXEMPLO PRÁTICO:
─────────────────────────────────────
┌─────────────────────────────────────────────────────────┐
│ AUTOMAÇÃO: Auto-atribuir QA                            │
├─────────────────────────────────────────────────────────┤
│                                                         │
│ QUANDO: Status muda para "Pronto para QA"              │
│ SE: Tipo é Feature ou Bug                              │
│ ENTÃO:                                                  │
│   ├── Atribuir para @maria (QA Lead)                   │
│   ├── Notificar @maria no Slack                        │
│   └── Definir SLA de teste = 2 dias                    │
│                                                         │
│ [Salvar] [Testar]                                      │
└─────────────────────────────────────────────────────────┘

Templates de Automação

AUTOMAÇÕES COMUNS PRÉ-CONFIGURADAS
══════════════════════════════════

AUTO-PROGRESSO:
─────────────────────────────────────
Quando: Tarefa atribuída
Então: Mover para "Em Progresso"
Uso: Tracking automático de início

PR → REVIEW:
─────────────────────────────────────
Quando: PR aberto (webhook GitHub)
Se: Contém task ID
Então: Mover para "Em Review"
Uso: Sincronização com VCS

MERGE → DONE:
─────────────────────────────────────
Quando: PR mergeado (webhook)
Então: Mover para "Done"
Uso: Fechamento automático

LEMBRETE DE VENCIMENTO:
─────────────────────────────────────
Quando: 24h antes do vencimento
Se: Status não é Done
Então: Notificar assignee
Uso: Prevenir atrasos

ALERTA DE BLOQUEIO:
─────────────────────────────────────
Quando: Status muda para "Bloqueado"
Então: 
  ├── Notificar Scrum Master
  └── Adicionar label "blocked"
Uso: Visibilidade de impedimentos

ITEM STALE:
─────────────────────────────────────
Quando: Sem atividade por 5 dias
Se: Status é "Em Progresso"
Então: 
  ├── Adicionar label "stale"
  └── Notificar assignee
Uso: Identificar trabalho parado

Integrações

GitHub/GitLab

AUTOMAÇÃO COM VERSION CONTROL
═════════════════════════════

FLUXO INTEGRADO:
─────────────────────────────────────
Dev cria branch feature/GS-123-login
         ↓
Commits: "feat: add login GS-123"
         ↓
Abre PR com título "[GS-123] Add login"
         ↓ AUTOMAÇÃO
GitScrum move GS-123 para "Em Review"
         ↓
PR aprovado e mergeado
         ↓ AUTOMAÇÃO
GitScrum move GS-123 para "Done"
         ↓ AUTOMAÇÃO
Notifica PO que feature está pronta

CONFIGURAÇÃO:
─────────────────────────────────────
Settings → Integrations → GitHub:
├── Autorizar
├── Selecionar repos
├── Definir padrão de task ID
├── Configurar automações:
│   ├── PR opened → In Review
│   ├── PR merged → Done
│   └── PR closed (sem merge) → volta status
└── Testar conexão

Slack/Teams

NOTIFICAÇÕES INTELIGENTES
═════════════════════════

QUANDO NOTIFICAR:
─────────────────────────────────────
✓ Tarefa bloqueada
✓ Prazo chegando
✓ Alta prioridade criada
✓ Sprint iniciado
✓ Feature deployada

QUANDO NÃO NOTIFICAR:
─────────────────────────────────────
✗ Cada mudança de status
✗ Cada comentário
✗ Atualizações menores
→ Evite notification fatigue

CONFIGURAÇÃO:
─────────────────────────────────────
Settings → Integrations → Slack:
├── Conectar workspace
├── Selecionar canal padrão
├── Definir regras de notificação
├── Customizar mensagem
└── Testar

EXEMPLO DE MENSAGEM:
─────────────────────────────────────
┌─────────────────────────────────────────────────────────┐
│ 🚨 Task Blocked                                        │
│                                                         │
│ GS-123: Login Feature                                  │
│ Blocked by: Waiting for API credentials               │
│ Assignee: @joao                                        │
│ Blocked since: 2 hours ago                             │
│                                                         │
│ [View Task] [Mark Resolved]                            │
└─────────────────────────────────────────────────────────┘

Boas Práticas

Princípios de Automação

PRINCÍPIOS PARA BOAS AUTOMAÇÕES
═══════════════════════════════

1. COMECE SIMPLES:
─────────────────────────────────────
├── Uma automação por vez
├── Teste antes de ativar
├── Observe por uma semana
├── Itere baseado em feedback
└── Adicione complexidade gradualmente

2. DOCUMENTE:
─────────────────────────────────────
├── O que a automação faz
├── Por que foi criada
├── Quando foi modificada
├── Quem é responsável
└── Como desativar se necessário

3. MONITORE:
─────────────────────────────────────
├── Automação está executando?
├── Está fazendo o esperado?
├── Há erros ou exceções?
├── Usuários estão satisfeitos?
└── Métricas de impacto

4. MANTENHA:
─────────────────────────────────────
├── Revise trimestralmente
├── Remova automações obsoletas
├── Atualize quando processo muda
├── Corrija bugs rapidamente
└── Evolua com o time

5. NÃO EXAGERE:
─────────────────────────────────────
├── Nem tudo precisa ser automatizado
├── Automação tem custo de manutenção
├── Complexidade cresce rápido
├── Menos automações = mais controle
└── Foque no alto impacto

Troubleshooting

PROBLEMAS COMUNS
════════════════

AUTOMAÇÃO NÃO DISPARA:
─────────────────────────────────────
Verificar:
├── Gatilho correto?
├── Condições atendidas?
├── Automação ativa?
├── Permissões corretas?
└── Webhook funcionando?

AUTOMAÇÃO DISPARA ERRADO:
─────────────────────────────────────
Verificar:
├── Condições muito amplas?
├── Conflito com outra automação?
├── Ordem de execução?
├── Dados inesperados?
└── Testar com casos específicos

LOOPS INFINITOS:
─────────────────────────────────────
Automação A dispara B, B dispara A...
Solução:
├── Adicionar condição anti-loop
├── Usar flag "automatedUpdate"
├── Limitar execuções por item
└── Revisar lógica

PERFORMANCE:
─────────────────────────────────────
Automação lenta ou timeout:
├── Simplificar condições
├── Reduzir ações por automação
├── Usar batch quando possível
└── Contatar suporte se persistir

Artigos Relacionados