Voltar para o Blog
Vibe Coding17 / 40
  1. 01O que é vibe coding (e o que não é)
  2. 02De escrever código a dirigir a intenção
  3. 03O ciclo: contexto → plano → geração → revisão
  4. 04O arsenal: visão geral do nosso stack de IA
  5. 05Quando não usar vibe coding
  6. 06Da ideia ao protótipo em horas
  7. 07Claude para brainstorm de produto e PRD
  8. 08Claude Artifacts para mockups instantâneos
  9. 09Lovable: do prompt ao app funcional
  10. 10Google AI Studio: prototipando com Gemini
  11. 11Lovable × Claude × Google Studio: quando usar cada um
  12. 12Claude Code: o par de programação que conhece o monorepo
  13. 13Anatomia de um bom prompt de engenharia
  14. 14Plan mode: planejar antes de gerar
  15. 15Skills e slash commands (/investigate, /review, /ship)
  16. 16Refactors e migrations em massa
  17. 17Debugging com IA: do stack trace à causa raiz
  18. 18Supabase: a espinha dorsal de dados
  19. 19Modelagem com Drizzle ORM
  20. 20RLS na prática: a regra que não tem exceção
  21. 21Migrations SQL à mão e o drift DB↔Drizzle
  22. 22Auth com Google OAuth no Supabase
  23. 23Realtime, Storage e o resto do Supabase
  24. 24Trigger.dev: o piloto automático
  25. 25Seu primeiro job agendado
  26. 26Workflows com retry e observabilidade
  27. 27IA em background: resumos e narrativas
  28. 28Deploy do Trigger.dev e as pegadinhas
  29. 29Evolution API: WhatsApp como canal de produto
  30. 30Instância por usuário e gestão centralizada
  31. 31IA gerando resumos de conversa
  32. 32Boas práticas e armadilhas no WhatsApp
  33. 33Integrando APIs de terceiros com IA
  34. 34Anthropic SDK: Claude dentro do produto
  35. 35Resend: e-mail transacional que chega
  36. 36Google Analytics, Search Console e Ads
  37. 37Rate limit, retry, idempotência e secrets
  38. 38GitHub: CI/CD e AI Code Review como portão de qualidade
  39. 39Deploy no Google Cloud Run
  40. 40A cultura por trás do vibe coding (e o futuro)
Vibe CodingParte 17 de 40

Debugging com IA: do stack trace à causa raiz

2 min de leitura
Compartilhar
Vibe Coding

Bug é onde o vibe coding mostra serviço de verdade. Não porque a IA "adivinha" o problema — mas porque ela rastreia rápido entre as camadas que, num monorepo, ninguém segura inteiras na cabeça. Este post fecha o Módulo 2 mostrando como debugamos com Claude Code.

Por que debugging combina com IA

Um bug no ClubPetro pode nascer no componente React, passar pelo procedimento tRPC, morrer numa query Drizzle ou esbarrar numa policy de RLS no Supabase. Seguir esse fio à mão é lento. A IA lê todas as camadas de uma vez e conecta os pontos — é tradução de "sintoma" pra "causa" em velocidade.

O fluxo que funciona

1. Dê o sintoma completo

Cole o erro inteiro: stack trace, mensagem, o que você fez pra disparar, o que esperava. Erro pela metade gera diagnóstico pela metade.

2. Use /investigate

Nossa skill de investigação (#15) conduz isso de forma estruturada — em vez de chutar a primeira causa plausível, ela levanta hipóteses e testa.

3. Exija a causa, não o band-aid

A pergunta certa não é "como faço o erro sumir?", é "por que isso acontece?". Tratar sintoma esconde o bug pra ele voltar pior depois.

4. Confirme antes de corrigir

Causa identificada, valide que faz sentido (reproduz? explica todos os sintomas?) antes de aplicar a correção. Depois, ciclo normal: plano → geração → revisão.

Os suspeitos de sempre (no nosso stack)

A IA acelera, mas conhecer os clássicos ajuda a guiar:

  • tRPC — erro inclui detalhe do Zod; ótima pista de validação.
  • DATABASE_URL — precisa ser porta 6543 (pooler) com prepare:false; porta 5432 dá SASL_SIGNATURE_MISMATCH.
  • RLS — "sumiu dado pela API" muitas vezes é policy faltando, não bug de código.
  • Build — dep faltando entre pacotes aparece no pnpm build.

Dar essas pistas no prompt encurta o caminho.

Onde o humano decide

A IA encontra a causa provável e propõe a correção. Validar que é a causa certa e que a correção não cria outro problema é julgamento humano. Bug "resolvido" sem entender a causa é bug que volta — e a gente é Leal a Dados: a correção tem que se sustentar na evidência, não na esperança.

⚠️ Armadilha #17: aceitar a primeira correção que faz o erro sumir sem entender por que ele acontecia. Você não corrigiu o bug — você mudou onde ele vai aparecer da próxima vez.

Fim do Módulo 2 — Claude Code. Próximo: Módulo 3 (#18) — Dados com Supabase.

Curtiu como a gente pensa?

É assim que trabalhamos todo dia.

Se esse jeito de pensar é o seu, vem construir com a gente — dá uma olhada nas vagas abertas.

Ver vagas