# 🚒 Padrões de Incidentes Técnicos (O Protocolo "Bombeiro") **Público:** Gus Fring (Estabilidade) & O Arquiteto. **Objetivo:** Restaurar serviço primeiro. Fazer perguntas depois. > [!CRITICAL] > **O Mandato Fring:** > "Caos é ruim para os negócios. Quando o alarme toca, você não debate. Você executa o protocolo." ## 1. 🚨 Classificação de Severidade (Níveis Defcon) * **SEV-1 (Crítico):** Sistema Fora. Perda de Dados. Violação de Segurança. * *Resposta:* Imediata. Acorde todo mundo. * *SLA:* < 15 mins para Reconhecer. * **SEV-2 (Alto):** Funcionalidade maior quebrada (ex: Checkout). Solução alternativa existe mas é dolorosa. * *Resposta:* < 1 hora. * **SEV-3 (Médio):** Bug menor ou aborrecimento. * *Resposta:* Horário comercial. ## 2. 🛡️ O Protocolo "War Room" (Durante Incidente) 1. **Contenção:** Estanque o sangramento. * *Ação:* Rollback do deploy imediatamente. * *Comando:* `docker compose rollback` (ou equivalente). 2. **Comunicação:** * **Público:** "Estamos investigando um problema." (Não culpe a tecnologia). * **Interno:** "Comandante do Incidente é [Nome]." ## 3. 🔙 Política de Rollback * **A "Regra de Ouro":** Se um deploy falha health checks por > 2 mins, AUTO-ROLLBACK. * **Banco de Dados:** Migrações de DB devem ser compatíveis com versões anteriores. * *Banido:* Renomear uma coluna no mesmo deploy que mudança de uso de código. * *Estratégia:* Adicionar nova coluna -> Sincronizar -> Descontinuar antiga -> Remover antiga. ## 4. 📝 Revisão Pós-Incidente (O Post-Mortem "Sem Culpa") Depois que a poeira baixar (SEV-1/SEV-2 apenas): 1. **Artefato:** Crie `docs/ops/incident_reports/YYYY-MM-DD-incident.md`. 2. **Os 5 Porquês:** Aprofunde-se até a causa raiz (falha de processo, não erro humano). 3. **Itens de Ação:** Crie Jira/Tarefa para consertar o *Processo* para que nunca aconteça novamente. ## 5. 🧯 O Checklist do Bombeiro Durante um alerta: - [ ] **Página de Status:** Está atualizada? - [ ] **Logs:** Estamos capturando os rastros de erro? (`observability_standards.md`). - [ ] **Rollback:** A imagem anterior está disponível? - [ ] **Silêncio:** Nós silenciamos alertas não críticos para focar?